基本使用


d1. dockerはimageを起動します.gpuバージョンを起動するにはnvidia-docker,-d detach,-i interactive,-t with fake terminal,-network=hostと同じネットワークを使用する必要があります.
nvidia-docker run -dit --name icdl  --network=host bash
既存のコンテナsudo docker exec-it 775 c 7 c 9 ee 1 e 1/bin/bashに接続
2.nvidia-dockerの代わりにdockerでgpu,cuda付きcontainerを起動する
docker run --device=/dev/nvidiactl --device=/dev/nvidia-uvm --device=/dev/nvidia0 -v nvidia_driver_367.48:/usr/local/nvidia:ro -dit --name=test7 --network=host docker.io/bvlc/caffe:gpu  /bin/bash
新版はそんなに面倒ではありません.https://github.com/NVIDIA/nvidia-dockerああ、docker--runtime=nvidia...
3.gdbサポート付きcontainer、run時に--cap-add=SYS_を加えるPTRACE
 
echo 0 /proc/sys/kernel/yama/ptrace_scope

4.docker attach以降、Ctrl+P and Ctrl+Qで離脱
5.dockerオフラインインストール1)https://download.docker.com/linux/static/stable/x86_64/ダウンロード後、/usr/local/binの下に解凍し、2)
  vi   /etc/fstab # none        /sys/fs/cgroup          cgroup        defaults    0    0
3)gpuを使用する場合は2のコマンドでcontainerを起動する
 
6.container:docker ps-a
7.どのようなimageがありますか:docker images
8.不要なcontainer:docker rm-f face/face 1:version 1を削除
9.imageの削除:docker rmi
10.現在のcontainerをimage,commit部分,face/face 1は倉庫名,version 1はtagとして保存する
docker commit c3f279d17e0a  face/face1:version1
 image       :docker save -o /home/sam/aa.tar  face/face1:version1
      image :docker load --input aa.tar
11.   container   ,    ,           
docker export test20  -o ./faceexport.tar
gzip --best faceexport.tar
cat /home/faceexport.tar | docker import - face:latest

12. 添加卷

ln -s /u01 /var/lib/docker/volumes/volu01
docker volume create volu01
docker run -dit --mount source=volu01,target=/u01 --name icdl1 --network=host 93682a1555c1 bash
    -d   it,      , volu01          
13.    ,            ,ln -s /u01 /var/lib/docker/volu01
   /etc/rc.local       
systemctl start docker
docker volume create volu01
docker start icdl1
docker exec -d icdl1 starticdl.sh

そのうちstarticdl.shはcontainer内部/usr/bin/ディレクトリの下に位置する、server.pyには、デーモンが入っています
#!/bin/bash
cd /idcardDriverlisenceRecog/src/ && python server.py

デーモンのセクションは次のとおりです.https://blog.csdn.net/northeastsqure/article/details/90515122
14. alpine   linux,  busybox

インストールbash:RUN apk add--update bash&&rm-rf/var/cache/apk/*
内は管理者権限がなく、dockerfileの中:USER root
15.docker内部プログラムの起動:
  cd/idcardDriverlisenceRecog/src/  python/idcardDriverlisenceRecog/src/IDcardVehiclelisenceRecog_facepp_youtu.py
  exit 0
 
16.dockerのあるcontainerをdockerと一緒に起こします.つまり、いつまでも停止しません.
  
docker update CONTAINER --restart always
17.ubuntu 1604,dockerを作成する
ここから接続して作成し、18コマンドに従って、https://github.com/tianon/docker-brew-ubuntu-core/tree/010bf9649b1d10e2c34b159a9a9b338d0fdd4939/xenial
18.dockerfileからdockerイメージを得る
   docker build --tag='ubuntu1604:Dockerfile' .
19.docker psなどのdockerコマンドを実行します.Got permission denied while trying to connect to the Docker daemon socket atに遭遇しました.unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.37/containers/json: dial unix/var/run/docker.sock: connect: permission denied
現在のユーザーをdockerグループに追加し、再ログインします.
 sudo usermod -a -G docker $USER
 relogin
20.フォルダをdocker containerにコピーするか、コピーする
  docker cp src/opencv-2.4.13.6 seetaface_ubuntu1604:/
2つのパラメータを逆さまにするとコピーされます