下载tensorflow 镜像并运行
[root@Ieat1 ~]# docker run -d --name tensorflow -it -p 8888:8888 tensorflow/tensorflow
ff716bcb8642e258eb7007f3f0c6756a82998d2844df8b374df85c9faf1b0629
通过观察发现新建的notebook都在容器的/notebooks目录下,为了使notebook不丢失,我们可以把它放在宿主机的目录上,比如/data/tensorflow/notebooks,启动时指定卷
docker run -d --name tensorflow -v /data/tensorflow/notebooks:/notebooks -it -p 8888:8888 tensorflow/tensorflow
查看docker日志,发现提示我们访问地址 http://127.0.0.1:8888/?token=061bdda51d27eaab82049d1eda42bd63381a4c4d33eaee67
[root@Ieat1 ~]# docker logs -f tensorflow
[I 06:11:01.349 NotebookApp] Writing notebook server cookie secret to /root/.local/share/jupyter/runtime/notebook_cookie_secret
[W 06:11:01.372 NotebookApp] WARNING: The notebook server is listening on all IP addresses and not using encryption. This is not recommended.
[I 06:11:01.383 NotebookApp] Serving notebooks from local directory: /notebooks
[I 06:11:01.383 NotebookApp] The Jupyter Notebook is running at:
[I 06:11:01.383 NotebookApp] http://(ff716bcb8642 or 127.0.0.1):8888/?token=061bdda51d27eaab82049d1eda42bd63381a4c4d33eaee67
[I 06:11:01.383 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[C 06:11:01.383 NotebookApp]
Copy/paste this URL into your browser when you connect for the first time,
to login with a token:
http://(ff716bcb8642 or 127.0.0.1):8888/?token=061bdda51d27eaab82049d1eda42bd63381a4c4d33eaee67
访问后看到 jupyter界面,我们可以在线编辑代码
jupyter介绍参考 https://www.jianshu.com/p/91365f343585
新建notebook
输入示例代码点击Run运行
import tensorflow as tf
import numpy as np
# 使用 NumPy 生成假数据(phony data), 总共 100 个点.
x_data = np.float32(np.random.rand(2, 100)) # 随机输入
y_data = np.dot([0.100, 0.200], x_data) + 0.300
# 构造一个线性模型
#
b = tf.Variable(tf.zeros([1]))
W = tf.Variable(tf.random_uniform([1, 2], -1.0, 1.0))
y = tf.matmul(W, x_data) + b
# 最小化方差
loss = tf.reduce_mean(tf.square(y - y_data))
optimizer = tf.train.GradientDescentOptimizer(0.5)
train = optimizer.minimize(loss)
# 初始化变量
init = tf.initialize_all_variables()
# 启动图 (graph)
sess = tf.Session()
sess.run(init)
# 拟合平面
for step in range(0, 201):
sess.run(train)
if step % 20 == 0:
print step, sess.run(W), sess.run(b)
示例代码地址 http://www.tensorfly.cn/tfdoc/get_started/introduction.html
看到运行成功