Docker 容器化部署与镜像管理实战指南

很多刚接触 Docker 的朋友会觉得概念抽象,其实把它想象成一个打包工具就明白了。你把代码、依赖、环境全部打成一个包,这个包在任何机器上跑起来效果都一样,这就是容器化的核心价值。

先从镜像说起。镜像是容器的模板,就像光盘里的系统安装文件。你可以从 Docker Hub 拉取现成的镜像,比如运行一个 Nginx 服务只需要一行命令:docker pull nginx。拉取完成后用 docker images 查看本地镜像列表,能看到镜像名称、标签和大小。建议给镜像打上版本标签,比如 nginx:1.24 而不是用默认的 latest,这样能避免线上环境突然升级导致的问题。

创建容器是下一步。用 docker run 命令启动容器,加上 -d 参数让它在后台运行,-p 参数映射端口。比如 docker run -d -p 8080:80 nginx 就是把容器的 80 端口映射到宿主机的 8080 端口。访问 localhost:8080 就能看到 Nginx 的欢迎页面。

镜像管理中最实用的是自定义镜像。写一个 Dockerfile 就能定义你的应用环境。第一行写 FROM 指定基础镜像,比如 FROM node:18-alpine。然后用 COPY 把代码复制进去,RUN 执行安装命令,最后 CMD 指定启动脚本。举个例子,一个 Node.js 应用的 Dockerfile 大概长这样:FROM node:18-alpine,WORKDIR /app,COPY package.json .,RUN npm install –production,COPY . .,CMD node server.js。写好后用 docker build -t myapp:1.0 . 来构建镜像。

容器运行中难免要排查问题。docker ps 查看运行中的容器,加上 -a 能看到所有包括已停止的。docker logs 容器 ID 查看日志输出。如果容器里需要临时执行命令,用 docker exec -it 容器 ID bash 就能进入容器内部。

最后说说数据持久化。容器删除后数据会丢失,所以要用卷来保存重要数据。启动容器时加上 -v 参数,比如 -v /host/data:/container/data,这样宿主机的目录就挂载到容器里了。数据库这类有状态服务一定要配卷。

掌握这些基础操作,你就能把大部分应用容器化了。关键是多动手,找个简单项目写个 Dockerfile 试着部署,遇到问题查日志,慢慢就熟练了。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇