docker使用(一)生成,启动,更新(容器暂停,删除,再生成)

docker使用(一)

要创建一个镜像,你可以按照以下步骤进行操作:

编写一个 Dockerfile

  1. 编写一个 Dockerfile:Dockerfile 是一个文本文件,用于定义镜像的构建过程。在 Dockerfile 中,你可以指定基础镜像、安装软件、复制文件等操作。

java 复制代码
FROM node:18-alpine
WORKDIR /app
COPY . .
RUN yarn install --production
CMD ["node", "src/index.js"]

构建镜像

构建镜像:使用 docker build 命令来构建镜像。在命令行中,进入 Dockerfile 所在的目录,然后运行以下命令:

复制代码
   docker build -t <镜像名称> .

其中,<镜像名称> 是你想要给镜像起的名称,. 表示当前目录。注意点不能省略

构建失败

复制代码
failed commit on ref "layer-sha256:7264a8db6415046d36d16ba98b79778e18accee6ffa71850405994cffa9be7de": "layer-sha256:7264a8db6415046d36d16ba98b79778e18accee6ffa71850405994cffa9be7de" failed
 size validation: 0 != 3401613: failed precondition

可能是docker版本错误或者下载出错

我的是刚下的,很大可能不是版本问题,于是清除docker缓存

复制代码
   docker system prune -a

结束后,继续进行docker构建命令

复制代码
  docker build -t <镜像名称> .

构建成功

运行镜像

运行镜像:构建成功后,你可以使用 docker run 命令来运行镜像。例如:

复制代码
   docker run <镜像名称> 

或者

复制代码
docker run -dp 3000:3000 <镜像名称> 

这将在容器中运行你的镜像,并执行其中定义的操作。

运行成功

修改代码后再次构建

此时代码已经修改

请不要直接进行构建,要将原有的旧容器删除或暂停

使用命令获取容器的 ID

复制代码
docker ps

docker stop

我的container-id是9c845a155512

复制代码
docker stop <the-container-id>

停止成功

使用命令将其删除

docker rm 9c845a155512

删除成功

也可直接在仪表板进行删除

再次构建且构建成功!


相关推荐
代码什么用6 分钟前
Maven&Nexus
java·maven
顧棟12 分钟前
OpenAPI 网关:鉴权 + 流量治理 一体化设计方案与实现
java·spring boot·设计模式
Rain的Java大神之路13 分钟前
「设计一个在线文档协同编辑系统」:从 WebSocket、OT/CRDT 到快照回放,一篇讲透这道面试顶流题
java·后端·面试
程序员梅雨22 分钟前
【从零开始学习数据仓库 | 第三篇】: Flume——数据采集基石
java·大数据·数据仓库·后端·学习·flume
acd1200930 分钟前
域名解析缓存带来的隐性故障,很多排查都漏掉了这一层
java·运维·nginx
wuminyu32 分钟前
JVM执行引擎学习总结:热点字节码编译成本地机器码
java·linux·c语言·jvm·c++
真上帝的左手33 分钟前
2. 编程语言-Java-Spring Boot-JAR
java·spring boot·jar
Jack_hsfs39 分钟前
第6章Spring 管理的是对象,还是对象的说明书?
java·后端·spring
mengge.cloud1 小时前
10-29-Kubernetes动态卷供应StatefulSet与ETCD
容器·kubernetes·etcd