一、docker基本命令
1、docker启动命令
systemctl start docker
2、docker停止命令
systemctl stop docker
3、docker重启命令
systemctl restart docker
二、docker容器基本命令
1.启动
docker start 容器名
2.删除
docker rm 容器名
3.停止所有容器
docker stop $(docker ps -a -q)
docker rm $(docker ps -a -q)
4.使用 Dockerfile 创建镜像
.docker build -t 名称 .
Usage:docker build [OPTIONS] PATH | URL | -
OPTIONS:
-t ,--tag list #构建后的镜像名称
-f, --file string #指定Dockerfiile文件位置
示例:
1,docker build .
2,docker build -t redis:v1 .
3,docker build -t redis:v2 -f /path/Dockerfile /path
一般常用第2种方式构建,我们在构建时都会切换到Dockerfile文件的目录下进行构建,所以不需要指定-f参
5.进入容器
#第一种方式
docker attach 容器id
#第二种方式(推荐使用)
docker exec -it 容器id /bin/bash
#注:如果出现
OCI runtime exec failed: exec failed: container_linux.go:345: starting container process caused "exec: \"/bin/bash\": stat /bin/bash: no such file or directory": unknown
#这样的错误,是我们docker镜像中的/bin/bash文件并不存在,可能存在的是/bin/sh文件,使用
docker exec -it 44fc0f0582d9 /bin/sh
6.查看容器详细信息
docker inspect 容器名
7.查看容器的日志
docker logs 容器名
8、停止一个正在运行的容器
#1、docker stop 此方式常常被翻译为优雅的停止容器
docker stop 容器ID或容器名
#2、docker kill 直接关闭容器
docker stop -t=60 容器ID或容器名
docker kill 容器ID或容器名
#备注:
参数 -t:
关闭容器的限时,如果超时未能关闭则用kill强制关闭,默认值10s,这个时间用于容器的自己保存状态
9、重启容器
docker restart 容器ID或容器名
#注:不管容器是否启动,直接重启容器
docker restart 参数
-t:关闭容器的限时,如果超时未能关闭则用kill强制关闭,默认值10s,这个时间用于容器的自己保存状态
10、运行容器
docker run --name container-name:tag -d image-name
--name:自定义容器名,不指定时,docker 会自动生成一个名称
-d:表示后台运行容器
image-name:指定运行的镜像名称以及 Tag
11、查看容器
docker ps -a #查看所有容器
12、端口映射
docker run --name container-name:tag -d -p 服务器端口:Docker 端口 image-name
--name:自定义容器名,不指定时,docker 会自动生成一个名称
-d:表示后台运行容器
image-name:指定运行的镜像名称以及 Tag
-p 表示进行服务器与 Docker 容器的端口映射,默认情况下容器中镜像占用的端口是 Docker 容器中的端口与外界是隔绝的,必须进行端口映射才能访问
13、容器网络
查看默认的网络 :docker network ls
创建自定义网络 :docker network create 网络名
docker network create mynetwork
docker network create --subnet=192.168.1.0/24 mynetwork
查看容器ip地址: docker network inspect 网络名
docker network inspect mynetwork
14、容器里的文件共享到宿主机
docker cp 容器id:容器里的文件路径 共享到宿主机文件位置
docker cp 宿主机文件位置 容器id:容器里的文件路径 #将宿主机上的某个文件拷贝到容器里