1.1DOCKER(2)

docker最重要的概念:

  • image就像程序裏的類,container就像程序裏的實例。可以每次運行都新建一個實例,也可以一直用同一個實例。每次都新建實例保證運行環境永遠一致。用同一個實例保證前後具有連續性。當然也可以把實例commit爲新的版本,然後每次都用新版本的images。
  • 解決了計算環境的問題就剩文件的問題。只要我們每次運算後的結果保存的文件裏,就不會隨着container消失而消失。

1.希望的幾點功能:

* 容器和本機共享文件夾,這樣可以在本機上編輯文件
* 容器可以運行本機編輯過的python文件
* 容器可以打開jupyter notebook ,並遠程編輯調試
* 容器在運行過程中可以打開過個窗口(exec實現),因爲我們可能還在同一個容器需要執行其他命令。
    * 比如運行jupyter notebook 的同時用python 運行文件。
* 容器的互聯。尤其是數據庫容器和計算容器的鏈接。

2. 常用命令總結:

  • 顯示鏡像 docker images
  • 顯示容器 docker ps -a
  • 搜索鏡像 docker search image_name
  • 下載鏡像 docker pull image_name
  • 顯示docker狀態docker stats
  • 容器拷貝文件,如果有共享文件夾就不需要這個了。
    • docker cp <containerId>:/file/path/within/container /host/path/target
  • 進入正在運行的容器
    • 1:docker attach id 剛方法進入之後,exit退出就會導致容器stop,最好不要使用
    • 2:docker exec -it containerID /bin/bash 這個命令exit退出,ok容器還在運行
  • start 和run 的區別

第一次啓動用docker run,之後用docker start.

docker run相當於執行了兩步操作:將鏡像放入容器中(docker create),然後將容器啓動,使之變成運行時容器(docker start)。

  • 清理容器
    殺死所有正在運行的容器
    docker stop$(docker ps -a -q)
    刪除所有已經停止的容器
    docker rm $(docker ps -a -q)
    刪除所有未打 dangling 標籤的鏡像
    docker rmi $(docker images -q -f dangling=true)
    刪除所有鏡像
    docker rmi $(docker images -q)
  • 參數總結:
    • --user root | 用root 賬號登錄容器
    • -P |使用隨機端口,使用docker ps -a查看端口
    • -p 7777:8888 |容器的8888映射的本機的7777
    • -v /e/docker:/home/work |把本機的docker目錄掛載到容器的work下,只有登錄容器root賬號才能成功掛載。關於docker toolbox 的設置:
    • --rm |容器退出時即刪除。數據不會丟失。
    • --name test |重命名爲test這樣操作起來不需要id了,不能重複
    • --privileged=True |文件夾訪問被拒絕,可以用特權啓動。

3. docker toolbox

win10,7,8,mac都是利用docker toolbox開一個虛擬機,然後在虛擬機裏打開容器,所以ip地址是虛擬機的ip地址。

  • docker toolbox 查詢ip
    docker-machine ip default
  • 查看環境變量
    docker-machine env
  • 重啓
    docker-machine restart default

4.images的遷移

  • docker save -o tensorflow.tar.gz 271ae1439df0
  • docker load -i tensorflow.tar.gz
  • load之後一般沒有名稱和tag,需要手動添加:
    docker tag containerID username/tensorflow:v1

5.docker在centos的離線安裝

tar xzvf docker.tar.gz
sudo cp docker/* /usr/bin
sudo dockerd &

6.關於selinux

  • 還有一種臨時方案
    setenforce 1 開啓
    setenforce 0 關閉
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章