基础命令
帮助命令
docker --help(帮助命令)
用于获取某个命令的帮助信息
bash
#命令帮助
docker 命令 --help
小技巧
换行符 '\'
使用命令换符,可以让繁杂命令变得有条理
bash
#命令换行,使用换行符 \
docker ... \
... \
镜像命令
docker pull(拉取镜像)
对于常用镜像可以从官方镜像仓库获取,pull命令拉取到本地镜像仓库
bash
docker pull 镜像名或者镜像名:tag
#注意:如果pull后不指定镜像版本(或叫标签),直接使用镜像名=镜像名:latest,也就是下载最新的-英[ˈleɪtɪst]:最新的
docker pull 镜像名:latest
docker images(查看镜像)
查看镜像,镜像的英文image,其复数形式images,所以有
bash
#镜像查看
docker images
docker rmi(删除镜像)
那么镜像删除呢?镜像英文image,所以 'rm' +'i'
bash
#镜像删除
docker rmi 镜像名或者镜像id
docker tag(修改镜像名)
如果要**修改镜像名(或者叫标签名),**使用tag
bash
docker tag 镜像名:tag 新镜像名和tag
docker tag 镜像id 新镜像名和tag
docker save(镜像保存成压缩包)
镜像保存成tar压缩包格式,便于文件传输和使用
bash
docker save -o 文件名.tar 镜像名或者镜像id
docker load (镜像加载)
对于tar压缩包格式的镜像,如果想要加载,需使用此指令
bash
docker load -i 压缩包名.tar
容器命令
docker run(运行容器)
docker容器运行,自然而然想到docker run。那么run的是什么?得到什么呢?如何记忆
运行镜像,得到镜像运行后对应的容器,其相当于执行了两步操作:将镜像放入容器中(docker create),然后将容器启动,使之变成运行时容器(docker start)
bash
#注意:镜像名是镜像名:版本,直接使用镜像名=镜像名:latest
docker -run 镜像名或者镜像id
但是还不够,我们需要给容器命名,所以有--name=容器名
bash
docker run --name=容器名 镜像名或者镜像id
容器命名了,还需要让容器在后台启动,所以有了-d
bash
docker run --name=容器名 -d 镜像名或者镜像id
如果主机重启了,你会发现容器不会重新运行,想开机自启动,所以有--restart=always
bash
docker run --name=容器名 -d --restart=always 镜像名或者镜像id
容器的私有网络如果想通过主机访问,那么需要主机与容器端口映射, -p 主机端口:容器端口
bash
docker run --name=容器名 -d --restart=always -p 主机端口:容器端口 镜像名或者镜像id
**目录挂载,**是为了解决docker重启后,之前容器运行的配置或者数据丢失,所以要将主机目录与容器目录做映射,使用 -v参数,注意需要确保主机目录存在,否则挂载不生效
bash
#总结:--name 容器命名,-d 后台启动,--restart 开机自启动,-p 端口映射, -v 目录映射(多个映射使用多个-v)
docker run --name=容器名 -d --restart=always -p 主机端口:容器端口 -v 主机目录:容器目录 镜像名或者镜像id
docker rm(删除容器)
容器删除直接记remove缩写rm
bash
#容器删除,针对已经停止的容器
docker rm 容器名或者容器id
docker ps(查看容器)
查看容器,ps是process status,是在Linux系统中是常用的进程管理命令,这里docker ps与之异曲同工
bash
#正在运行的容器查看
docker ps
#如果要看所有的容器,比如还能看停止的容器
docker ps -a
docker start/stop/restart(启动/停止/重启容器)
**启动/停止/重启容器,**自然而然想到start/stop/restart
bash
#启动容器
docker start容器名或者容器id
#停止容器
docker stop 容器名或者容器id
#重启容器
docker restart 容器名或者容器id
docker update(更新容器)
容器启动后,如果想要更新运行参数,可以使用update命令
bash
docker update 容器名或者容器id 需要追加的参数
docker exec(进入容器)
-i选项代表使用交互方式,-t代表打开一个终端,/bin/bash作用是进入后启动bash命令支持
bash
docker exec -it 容器名或容器id /bin/bash
docker commit(容器内容修改)
进入到容器后,如果想修改其内容,并重新打成新的镜像
bash
docker commit 镜像名或者镜像id 新镜像名和tag
#参数-a author缩写,-m message缩写
docker commit -a "作者" -m "描述" 镜像名或者镜像id 新镜像名和tag
docker logs(查看容器日志)
有时需要排查容器运行的问题,可以使用logs命令
bash
docker logs 容器名或者容器id
docker cp (主机与容器文件拷贝)
bash
#从容器拷贝到主机
docker cp 容器id:容器文件或目录 主机文件或目录
#从主机拷贝到容器
docker cp 主机文件目录 容器id:容器文件或目录
远程操作
镜像命令
docker login(登录到docker镜像仓库)
bash
docker login -u "用户名" -p "密码" 远程镜像仓库地址(不写默认官方)
docker logout(退出登录)
bash
docker logout
docker push(推送镜像到远程仓库)
bash
docker push 镜像名或镜像id
待续。。。