Docker Dockerfile 使用方法
【摘要】 Dockerfile 介绍当使用Docker构建容器化应用程序时,Dockerfile是一个用于定义容器镜像的文本文件。它包含了一系列指令,告诉Docker如何从基础镜像(通常是官方或自定义的操作系统镜像)构建出最终的镜像,以及如何配置容器中的环境、文件和应用程序。Dockerfile 的编写是构建容器的基础,它允许您定义容器的构建步骤、环境和配置。通过合理使用各种指令,您可以构建出一个满足...
Dockerfile 介绍
当使用Docker构建容器化应用程序时,Dockerfile是一个用于定义容器镜像的文本文件。它包含了一系列指令,告诉Docker如何从基础镜像(通常是官方或自定义的操作系统镜像)构建出最终的镜像,以及如何配置容器中的环境、文件和应用程序。
Dockerfile 的编写是构建容器的基础,它允许您定义容器的构建步骤、环境和配置。通过合理使用各种指令,您可以构建出一个满足应用程序需求的定制化镜像,从而实现应用的容器化部署。
构建mysql镜像
创建Dockerfile ,将文件命名为 Dockerfile
# 使用MySQL 8.0作为基础镜像
FROM mysql:8.0
#设置了MySQL的root密码,创建mydb数据库
#设置了一个新的myuser用户以及该用户的123456密码,并赋予了访问指定数据库的权限
ENV MYSQL_ROOT_PASSWORD=78910
ENV MYSQL_DATABASE=mydb
ENV MYSQL_USER=myuser
ENV MYSQL_PASSWORD=123456
# 复制自定义的初始化SQL文件(init.sql)到容器中
COPY init.sql /docker-entrypoint-initdb.d/
# 暴露 MySQL 的默认端口
EXPOSE 3306
/docker-entrypoint-initdb.d/是MySQL官方镜像预定义的目录,用于初始化数据库。
在Dockerfile中,只能有一个FROM指令指定基础镜像。你不能在同一个Dockerfile中指定两个不同的基础镜像。
打开终端,并导航到包含 Dockerfile 的目录,执行以下命令来构建 Docker 镜像。
docker build -t my-mysql .
其中,my-mysql 是你为镜像指定的名称,. 表示 Dockerfile 在当前目录。
构建JDK镜像
创建Dockerfile ,将文件命名为 Dockerfile。
# 使用OpenJDK 17官方镜像作为基础镜像
FROM openjdk:17
# 设置Java环境变量
ENV JAVA_HOME=/usr/local/openjdk-17
ENV PATH="$PATH:$JAVA_HOME/bin"
打开终端,并导航到包含 Dockerfile 的目录,执行以下命令来构建 Docker 镜像。
docker build -t my-jdk .
其中,my-jdk 是你为镜像指定的名称,. 表示 Dockerfile 在当前目录。
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)