0%
一、基础命令
1 2
| docker info docker version
|
二、镜像相关命令
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
docker images -a docker images -q docker images --no-trunc
docker search nginx docker pull ngxin:latest
docker rmi ngxin docker rmi -f ngxin docker rmi -f ngxin tomcat docker rmi -f $(docker images -q)
|
三、容器相关命令
1 2 3 4 5 6 7 8 9
| docker run -itd --name ngxin-test -p 80:80 ngxin
docker start ngixn-test docker stop ngxin-test docker restart ngxin-test docker kill ngxin-test
docker ps [-a]
|
1 2 3 4 5
| docker logs -f 容器ID/容器名称 docker logs --since="2022-05-10" --tail 10 容器ID/容器名称
docker exec -it 容器ID bash docker cp 容器id:容器内路径 宿主机路径
|
四、Dockerfile文件
以下是文件模板
1 2 3 4 5 6 7 8 9 10 11 12 13
| FROM moxm/java:1.8-full
RUN mkdir -p /meetroom
WORKDIR /meetroom
COPY cloud-bus-meetroom8055-0.0.1-SNAPSHOT.jar app.jar
EXPOSE 8055
ENV TZ=Asia/Shanghai JAVA_OPTS="-Xms128m -Xmx256m -Djava.security.egd=file:/dev/./urandom"
CMD java $JAVA_OPTS -jar app.jar
|
1 2 3 4 5 6 7 8 9
| 指令详情 FROM 指定基础镜像 MAINTAINER 维护者的信息 RUN 需要运行的命令 WORKDIR 指定工作目录 COPY 复制本地主机(dockerfile文件的相对路径)到容器中 EXPOSE 容器需要暴露出的端口 ENV 指定一些环境变量 CMD 要执行的命令 每个容器只能执行一条命令
|
修改容器为总是重启
1 2
| docker container update --restart=always 容器名字
|
五、docker-compose命令
docker-compose.yml 模板
1 2 3 4 5 6 7 8 9 10 11 12
| version : '1' services: zh-meetroom: container_name: zh-meetroom build: ./meetroom ports: - "8055:8055" zh-member: container_name: zh-member build: ./member ports: - "8050:8050"
|
1 2 3 4 5
| version 版本号 services 将要启动额服务 container_name 指定容器名称 build 指定Dockerfile文件所在路径 ports 映射端口,宿主机端口:容器端口
|
docker-compose 常用命令
build命令
1 2 3 4 5 6 7 8
| docker-compose build [options] [SERVICE...]
--force-rm 删除构建过程中的临时容器。 --no-cache 构建镜像过程中不使用 cache(这将加长构建过程)。 --pull 始终尝试通过 pull 来获取更新版本的镜像。
|
up命令
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
docker-compose up
docker-compose up --no-recreate
docker-compose up --no-deps -d <SERVICE_NAME>
-d 在后台运行服务容器。 --no-color 不使用颜色来区分不同的服务的控制台输出。 --no-deps 不启动服务所链接的容器。 --force-recreate 强制重新创建容器,不能与 --no-recreate 同时使用。 --no-recreate 如果容器已经存在了,则不重新创建,不能与 --force-recreate 同时使用。 --no-build 不自动构建缺失的服务镜像。 -t, --timeout TIMEOUT 停止容器时候的超时(默认为 10 秒)
|
start命令
1 2
| docker-compose start [SERVICE...]
|
stop命令
1 2 3 4
| docker-compose stop [options] [SERVICE...]
-t, --timeout TIMEOUT 停止容器时候的超时(默认为 10 秒)。
|
restart命令
1 2 3 4
| docker-compose restart [options] [SERVICE...]
-t, --timeout TIMEOUT 指定重启前停止容器的超时(默认为 10 秒)
|
top命令
pull命令
1 2 3 4
| docker-compose pull [options] [SERVICE...]
--ignore-pull-failures 忽略拉取镜像过程中的错误。
|
rm命令
1 2 3 4 5
| docker-compose rm [options] [SERVICE...]
-f, --force 强制直接删除,包括非停止状态的容器。一般尽量不要使用该选项。 -v 删除容器所挂载的数据卷。
|
logs命令
1 2
| docker-compose logs [options] [SERVICE...]
|
kill命令
1 2
| docker-compose kill [options] [SERVICE...]
|
down命令
exec命令