docker下的tensorboard使用

1、docker安装

sudo yum install yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo yum install docker-ce docker-ce-cli containerd.io
sudo systemctl start docker
sudo systemctl enable docker
# 配置普通用户deploy使用docker命令
sudo useradd docker -g docker
sudo usermod -a -G docker deploy
sudo chmod a+rw /var/run/docker.sockocker

2、Tensorflow-cpu安装

(1)下载镜像

docker pull tensorflow/tensorflow

下载完毕展示结果:
Status: Downloaded newer image for tensorflow/tensorflow:latest

(2)创建容器

docker run --name my-tensorflow -it -p 8888:8888 -p 6006:6006 -v ~/tensorflow:/test/data tensorflow/tensorflow

docker run --name my-tensorflow-cpu -it --cpuset-cpus="0,1,2,3" -p 8888:8888 -p 6006:6006 -v ~/tensorflow:/test/data tensorflow/tensorflow

# 参数说明
--name:创建的容器名,即my-tensorflow
-it:保留命令行运行
-p 8888:8888:将本地的8888端口和http://localhost:8888/映射,用于jupyter notebook
-p 6006:6006:将本地的6666端口和http://localhost:6666/映射,用于tensorboard
-v ~/tensorflow:/test/data:将本地的~/tensorflow挂载到容器内的/test/data下
tensorflow/tensorflow :默认是tensorflow/tensorflow:latest,指定使用的镜像

(3)jupyter notebook环境

jupyter notebook --no-browser --port 8888 --ip=0.0.0.0 --allow-root
# 参数说明
--no-browser:不自动打开浏览器
--port:供访问的端口号
--ip:允许接入的ip, 这个参数一定要设置为0.0.0.0, 默认的127.0.0.1是无法在外部连接的
--allow-root :允许利用root用户访问
# 使用说明
若命令行提示无jupyter命令,则通过pip install jupyter notebook安装
成功启动jupyter notebook后,利用ip地址:8888/?token=即可访问

2、tensorboard使用

(1)测试代码

import tensorflow as tf
import numpy as np
## 数据准备
with tf.name_scope('data'):
     x_data = np.random.rand(100).astype(np.float32)
     y_data = 0.3*x_data+0.1
## 构建参数
with tf.name_scope('parameters'):
    with tf.name_scope('weights'):
        weight = tf.Variable(tf.random_uniform([1],-1.0,1.0))
        tf.summary.histogram('weight',weight)
    with tf.name_scope('biases'):
        bias = tf.Variable(tf.zeros([1]))
        tf.summary.histogram('bias',bias)
## 计算线性拟合值
with tf.name_scope('y_prediction'):
     y_prediction = weight*x_data+bias
## 计算损失值
with tf.name_scope('loss'):
     loss = tf.reduce_mean(tf.square(y_data-y_prediction))
     tf.summary.scalar('loss',loss)
## 构建优化器
optimizer = tf.train.GradientDescentOptimizer(0.5)
with tf.name_scope('train'):
     train = optimizer.minimize(loss)
## 参数初始化
with tf.name_scope('init'):
     init = tf.global_variables_initializer()
## 创建对话
sess = tf.Session()
## 融合tensorboard对象
merged = tf.summary.merge_all()
## 初始化tensorboard
writer = tf.summary.FileWriter("logs/", sess.graph)
sess.run(init)
## 循环操作
for step  in  range(101):
    sess.run(train)
    rs=sess.run(merged)
writer.add_summary(rs, step)

(2)开启tensorboard服务

## 命令行操作
tensorboard --logdir=logs --host=0.0.0.0 --port=6006
## 参数说明
--logdir:tensorboard事件所在文件夹
--host:IP地址
--port:网页端口
## 浏览器查看web界面
http://172.16.128.228:6006

3、其他

应用一:
拷贝文件至另一服务器
scp mnist_replica.py root@172.16.128.229:/home/deploy/
应用二:
拷贝文件至docker容器
docker cp mnist_replica.py b4a7b0abc256:/
应用三:
清华镜像https://pypi.tuna.tsinghua.edu.cn/simple/
  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值