访问 docker 容器的 tensorboard

该文展示了如何使用Tensorboard在Docker容器中记录并可视化训练过程中的损失。通过创建SummaryWriter,添加损失数据,然后在Docker容器中运行Tensorboard服务,端口映射确保本地可以访问。同时,文章提到了GPU支持和SSH连接到远程服务器来查看Tensorboard的方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

demo代码示例

'''
tensorboard --logdir=log_path
:return:
'''
from torch.utils.tensorboard import SummaryWriter

logger = SummaryWriter(log_dir='./log/boardtest/')

loss = [5.5, 4.1, 4.2, 3.2, 3.3, 2.9, 2.5, 1.2, 0.8, 0.6]
steps = [1000, 2000, 3000, 4000, 5000, 6000, 7000, 8000, 9000, 10000]

for i in range(len(loss)):

    logger.add_scalar('train_loss', loss[i], steps[i])
    logger.add_scalar('train_steps', loss[i], steps[i])

    logger.add_scalar('val_loss', loss[i], steps[i])
    logger.add_scalar('val_steps', loss[i], steps[i])

docker 容器端口映射

映射端口为6666

docker run --rm -it --gpus '"device=0"' --name chat_demo\
                       -p 6666:6666/tcp \
                       --shm-size 15G \
                       -v /data/donews/wangguisen/chat:/home \
                       wgs-torch:chat \
                       sh -c "tensorboard --logdir=/home/log/boardtest --port=6666 --bind_all"
  • gpus all:使docker能支持GPU,要用gpu必须用这种方式(版本19.03以上);
  • -i:–interactive,保持标准输入始终开启着,保证容器能收到STDIN;
  • -t:–tty,为创建的容器分配一个伪tty,相当于提供了交互式shell;
  • –name:这个容器的名字,建议加上自己标识,明确是谁的容器;
  • -v:挂载一个host的目录到容器内,可以挂载多个目录;
  • -p:端口映射,容器的6166端口映射到主机的6166,主机端口:容器端口;
  • –shm-size :可选,有时候shared-memory不足,可以通过这个参数指定;

上述启动容器,运行 tensorboard

tensorboard --logdir=/home/log/boardtest --port=6666 --bind_all

--bind_all: 将服务暴漏到网络中

本地ssh连接到服务器

ssh -L 6006:127.0.0.1:6166 root@10.10.10.10 -p 2212
  • 6006为本地的端口,6166为docker容器中开启tensorboard服务的端口号的主机映射端口;
  • root为你的用户名,10.10.10.10为你的服务器IP地址,2212为服务器的ssh端口;
  • 连接到服务器后,会提示输入密码,然后输入即可。

打开本地浏览器访问tensorboard

在本地浏览器打开页面:http://127.0.0.1:6006/,即可访问服务器里的docker容器的tensorboard服务。

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

WGS.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值