Docker - Dockerfile详解

493 字
2 分钟
Docker - Dockerfile详解

dockerfile 详解#

这里就用我以前的毕业设计来封装成一个容器作为目标吧!

那么首先需要安装 Python 还有一系列的依赖包,同时配置一个 MySQL。

也就意味着,我们需要搬运两个镜像箱子,一个是负责 Python | Django 的镜像箱,一个是 MySQL的镜像箱。

而后使得两个镜像箱在一个容器里协作运行!

这里就以创建 Mysql 的镜像箱为例子#

首先需要新建一个 Dockerfile 文件!

# 使用 MySQL 镜像
FROM mysql:latest
# 设置环境变量
ENV MYSQL_ROOT_PASSWORD=132120
ENV MYSQL_DATABASE=database
ENV MYSQL_USER=qianyue
ENV MYSQL_PASSWORD=132120
# 暴露端口
EXPOSE 3306

那么开始构建镜像吧!

Terminal window
docker build --t mysql .

安装完毕就试着启动一下吧!

Terminal window
docker run mysql

似乎启动后就在后台静默运行了,试着连接一下数据库吧。那么先看一下容器的启动状态吧!

Terminal window
root@qianyue-VMware-Virtual-Platform:/home/qianyue/develop/mysql# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1a1d0d3ac948 mysql "docker-entrypoint.s…" 3 minutes ago Up 3 minutes 3306/tcp, 33060/tcp festive_diffie

可以看到数据库的名字叫 festive_diffie ,那么就让我们开始连接吧!

Terminal window
docker exec -it festive_diffie mysql -u root -p

可以将以上的指令分为两块:

  1. docker exec -it festive_diffie 此处是意味着连接 festive_diffie 容器。
  2. 而后在此容器内执行 mysql -u root -p ,意味着使用mysql连接,并同时使用 -u root 用户登录,并包含 -p 的密码选项
Terminal window
root@qianyue-VMware-Virtual-Platform:/home/qianyue/develop/mysql# docker exec -it festive_diffie mysql -u qianyue -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 11
Server version: 9.2.0 MySQL Community Server - GPL
Copyright (c) 2000, 2025, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>

输入密码后就登陆成功啦!

那么明白 Dockerfile 的作用原理后,届时再尝试一下安装其他的容器环境吧!

关于开头所描述的 minishop 项目,将在后文的 docker-compose 进行详解!

支持与分享

如果这篇文章对你有帮助,欢迎分享给更多人或打赏支持!

打赏
Docker - Dockerfile详解
https://springtsuki.xucjno.com/posts/springtsuki/notes/docker/3-dockerfile-详解/
作者
SpringTsuki
发布于
2025-04-14
许可协议
CC BY-NC-SA 4.0
Profile Image of the Author
SpringTsuki
你好,我是浅月。
公告
浅月的开发小窝!欢迎你来到这里!
音乐
封面

音乐

暂未播放

0:000:00
暂无歌词
分类
标签
站点统计
文章
17
分类
8
标签
16
总字数
19,430
运行时长
0
最后活动
0 天前
站点信息
构建平台
GitHub Actions
博客版本
Firefly v6.13.5
文章许可
CC BY-NC-SA 4.0

文章目录