docker 的常用操作

本文详细介绍了Docker的基本操作,包括镜像的拉取、查看、删除,容器的创建、启动、重启、停止及日志查看等。同时,深入讲解了如何通过容器或Dockerfile创建镜像,并提供了具体的命令示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

镜像指令

docker pull centos:latest  # 从docker.io中下载centos镜像到本地
docker images              # 查看已下载的镜像
docker rm image_id         # 删除镜像,指定镜像id

# 删除所有镜像
# none 默认为 docker.io
docker rmi $(docker images | grep none | awk '{print $3}' | sort -r)

# 连接进行进入命令行模式,exit命令退出。
docker run -t -i nginx:latest /bin/bash

容器指令

docker run -itd --name my-nginx2 nginx  # 通过nginx镜像,【创建】容器名为 my-nginx2 的容器

docker start my-nginx --restart=always  # 【启动策略】一个已经存在的容器启动添加策略
                                              # no - 容器不重启
                                              # on-failure - 容器推出状态非0时重启
                                              # always - 始终重启

docker start my-nginx                   # 【启动】一个已经存在的容器

docker restart my-nginx                 # 【重启】容器

docker stop my-nginx                    # 【停止运行】一个容器

docker kill my-nginx                    # 【杀死】一个运行中的容器

docker logs  my-nginx                   # 【查看日志】

docker rename my-nginx new-nginx        # 【重命名】容器

docker rm new-nginx                     # 【删除】容器

进入容器

#进入容器
docker exec -it [containerID/Names] /bin/bash


#文件拷贝
#从主机复制到容器 
sudo docker cp host_path containerID:container_path

#从容器复制到主机 
sudo docker cp containerID:container_path host_path

 

镜像制作

通过容器创建镜像

docker commit -m="First Docker" -a="wcjiang" a6b0a6cfdacf wcjiang/nginx:v1.2.1

上面命令参数说明:

  • -m 提交的描述信息
  • -a 指定镜像作者
  • a6b0a6cfdacf 容器id
  • wcjiang/nginx:v1.2.1 创建的目标镜像名

通过Dockerfile创建镜像 

假设创建一个 node.js 镜像,首先在 node.js 项目根目录创建文件。

touch Dockerfile .dockerignore

.dockerignore 文件内容

.git
node_modules
npm-debug.log

   表示,这三个路径要排除,不要打包进入 image 文件。如果你没有路径要排除,这个文件可以不新建。 

Dockerfile 文件内容

FROM node:8.4
COPY . /app
WORKDIR /app
RUN npm install --registry=https://registry.npm.taobao.org
EXPOSE 3000
  • FROM node:8.4:该 image 文件继承官方的 node image,冒号表示标签,这里标签是8.4,即8.4版本的 node
  • COPY . /app:将当前目录下的所有文件(除了 .dockerignore 排除的路径),都拷贝进入 image 文件的 /app目录。
  • WORKDIR /app:指定接下来的工作路径为/app
  • RUN npm install:在/app目录下,运行 npm install 命令安装依赖。注意,安装后所有的依赖,都将打包进入 image 文件。
  • EXPOSE 3000:将容器 3000 端口暴露出来, 允许外部连接这个端口。

创建 image 文件

有了 Dockerfile 文件以后,就可以使用 docker image build 命令创建 image 文件了。

$ docker image build -t koa-demo .
# 或者
$ docker image build -t koa-demo:0.0.1 .

上面命令,-t 参数用来指定 image 文件的名字,后面还可以用冒号指定标签。如果不指定,默认的标签就是 latest。注意后面有个 .,表示 Dockerfile 文件所在的路径为当前路径

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值