自动删除所有缓存
1
| find .-name '__pycache__' -type d -exec rm -rf {} \;
|
执行镜像 生成容器
1
| docker run -itd --name movie2 -v /Users/haibei/Desktop/tar/:/app/data/ -p 8000:8000 717f187f1835
|
- -d: 后台运行容器,并返回容器ID;
- -i: 以交互模式运行容器,通常与 -t 同时使用;
- -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
根据当前位置的dockerfile构建镜像
- docker build -t 镜像名称 文件位置
1
| docker build -t hezhefly/movie .
|
- –tag, -t: 镜像的名字及标签,通常 name:tag 或者 name 格式;
1
| docker build github.com/creack/docker-firefox
|
删除所有镜像
1
| docker rmi 'docker images -q'
|
删除所有容器
1
| docker rm 'docker ps -a -q'
|
按条件批量删除镜像
1 2 3
| docker ps -a | grep "Exited" | awk '{print $1}' | xargs docker stop docker ps -a | grep "Exited" | awk '{print $1}' | xargs docker rm docker images | grep none | awk '{print $3}' | xargs docker rmi
|
grep:正则搜索
awk: 样式扫描
进入容器内部
1
| docker exec -it 镜像名称 /bin/bash
|
- -t: 分配一个伪终端
- -i: 即使没有附加也保持STDIN 打开
alpine版镜像没有bash,需要在创建镜像时安装bash
1 2 3 4 5 6 7
| RUN apk update \ && apk upgrade \ && apk add --no-cache bash \ bash-doc \ bash-completion \ && rm -rf /var/cache/apk/* \ && /bin/bash \
|
复制文件到镜像,拷贝镜像文件出来
1
| docker cp 宿主机地址 容器名: 容器地址
|
1
| docker cp 容器名:容器地址 宿主机地址
|
自启动
1
| docker run --restart=always
|
追加自启动命令
1
| docker update --restart=always <CONTAINER ID>
|
镜像打包
1
| docker commit -a "hezhefly" -m "first test" 6f6dd434ea77 reranking:v1
|