Docker镜像拉取

  1. 拉取镜像

    1
    2
    3
    4
    5
    # 拉取镜像
    docker pull tensorflow/tensorflow:latest

    # 运行镜像
    docker run -it -p 8999:8000 tensorflow/tensorflow:latest-jupyter

  2. 查看刚才部署的docker容器

    1
    docker ps -a

    x2ywF.png
  3. 启动容器

    1
    docker start b80bc8764ed4

  4. 进入容器

    1
    docker exec -it b80bc8764ed4 /bin/bash

镜像内配置

  1. 安装Vim
    1
    2
    3
    4
    apt update

    # 安装Vim
    apt install vim
  2. 安装lsof工具
    1
    2
    # 安装lsof工具
    apt install lsof
  3. 安装Nginx
    1
    2
    # 安装Nginx
    apt install nginx
  4. 配置Nginx
    1
    2
    # 配置Nginx
    vim /etc/nginx/nginx.conf

    修改下面内容
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    ##
    # Virtual Host Configs
    ##

    include /etc/nginx/conf.d/*.conf;
    include /etc/nginx/sites-enabled/*;

    server {
    listen 8000;
    server_name 这里替换为你的域名或者服务器的IP地址;

    location / {
    proxy_set_header Host $host:$server_port;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_pass http://127.0.0.1:8888;
    }
    }
  5. 修改Nginx默认配置
    1
    2
    3
    4
    5
    cd /etc/nginx/sites-available/

    ls

    vim default

    修改下面内容
    1
    2
    3
    server {
    listen 80 default_server;
    listen [::]:80 default_server;
  6. 进入python环境,配置密码
    1
    2
    3
    4
    python

    >>> from notebook.auth import passwd
    >>> passwd()

    获得下面的字符串:
    1
    argon2:$argon2id$v=19$m=10240,t=10,p=8$3Rsx9cifYFHs1VqNcjuTTQ$r3Oy+oJ6uVa0RsS3UgSYVgxdBL2yUylFWUAaH6AwUDo

    退出python环境
    1
    exit()
  7. 生成jupyter配置文件
    1
    jupyter notebook --generate-config

    打开配置文件,修改下面内容
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    vim /root/.jupyter/jupyter_notebook_config.py

    # 修改下面内容

    # 密码
    c.NotebookApp.password = 'argon2:$argon2id$v=19$m=10240,t=10,p=8$3Rsx9cifYFHs1VqNcjuTTQ$r3Oy+oJ6uVa0RsS3UgSYVgxdBL2yUylFWUAaH6AwUDo'

    # 运行所有域名
    c.NotebookApp.allow_origin='*'

    # 允许远程
    c.NotebookApp.allow_remote_access = True

    # 默认启动目录
    c.NotebookApp.notebook_dir = '/home/notebook'

    # 不打开浏览器
    c.NotebookApp.open_browser = False
  8. 退出容器到系统中
    1
    exit
  9. 重启这个容器
    1
    docker restart b80bc8764ed4
  10. 再次进入这个容器中
    1
    docker exec -it b80bc8764ed4 /bin/bash
  11. 启动nginx
    1
    2
    3
    4
    nginx -c /etc/nginx/nginx.conf

    # 退出容器
    exit
  12. 打开浏览器,输入地址,密码访问