文章目录
docker命令总览
这边引用网上的图,我感觉非常清晰
镜像仓库
- git仓库存放代码
- 镜像仓库存放镜像
- dockerhub地址:https://hub.docker.com/
登录镜像仓库
docker login -u 用户名 -p 密码
登出镜像仓库
docker logout
镜像下载
拉取指定名字指定版本的镜像
docker pull name:tag
拉取指定名字最新版本镜像
docker pull name
拉取指定名字所有版本镜像
docker pull -a name
镜像推送
推送指定名字指定版本的镜像
docker push name:tag
推送指定名字最新版本镜像
docker push name
镜像
生成容器的模板,可以做一个类比
程序和进程的概念,镜像就是程序,容器就是进程
镜像查看
查看本地镜像
docker images
终端显示结果
runoob@runoob:~$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
mymysql v1 37af1236adef 5 minutes ago 329 MB
runoob/ubuntu v4 1c06aa18edee 2 days ago 142.1 MB
<none> <none> 5c6e1090e771 2 days ago 165.9 MB
httpd latest ed38aaffef30 11 days ago 195.1 MB
alpine latest 4e38e38c8ce0 2 weeks ago 4.799 MB
mongo 3.2 282fd552add6 3 weeks ago 336.1 MB
redis latest 4465e4bcad80 3 weeks ago 185.7 MB
php 5.6-fpm 025041cd3aa5 3 weeks ago 456.3 MB
python 3.5 045767ddf24a 3 weeks ago 684.1 MB
镜像删除
docker rmi 镜像id/镜像名
强制删除
docker rmi -f 镜像id/镜像名
镜像转文件
docker save -o 文件名 名字:版本
文件名一般以tar结尾
文件转镜像
docker load -i 文件名
docker import 文件名 name:tag
docker load和docker import区别?
- docker import文件对应的是docker export文件,docker export是根据容器名导出
- docker load文件对应的是docker save文件
容器变为镜像
docker commit 容器id name:tag
容器
从镜像运行容器
docker run --name mynginx -p 80:80 -v /data:/data -d nginx:latest
- –name : 指定容器名称
- -p : 端口映射
- -v : 硬盘挂载
- -d: 后台运行容器,并返回容器ID
启动/重启/停止容器
启动已被停止的容器myrunoob
docker start 容器id/容器名
停止运行中的容器myrunoob
docker stop 容器id/容器名
重启容器myrunoob
docker restart 容器id/容器名
删除容器
删除容器
docker rm 容器id/容器名称
强制删除容器
docker rm -f 容器id/容器名称
查看容器
查看运行中容器
docker ps
查看所有容器
docker ps -a
登录容器
查看所有容器
docker exec -it 容器id
Dockerfile
使用当前目录的 Dockerfile 创建镜像,标签为 runoob/ubuntu:v1
docker build -t runoob/ubuntu:v1 .
也可以通过 -f Dockerfile 文件的位置:
docker build -f /path/to/a/Dockerfile .
Dockerfile常用指令
https://blog.csdn.net/redrose2100/article/details/121025256