Docker Dockerfile 使用方法

Dockerfile 介绍

当使用Docker构建容器化应用程序时,Dockerfile是一个用于定义容器镜像的文本文件。它包含了一系列指令,告诉Docker如何从基础镜像(通常是官方或自定义的操作系统镜像)构建出最终的镜像,以及如何配置容器中的环境、文件和应用程序。

Dockerfile 的编写是构建容器的基础,它允许您定义容器的构建步骤、环境和配置。通过合理使用各种指令,您可以构建出一个满足应用程序需求的定制化镜像,从而实现应用的容器化部署。

创建Dockerfile文件

并将以下内容粘贴到文件中,然后将文件命名为 Dockerfile

# 使用官方的 MySQL 镜像作为基础镜像
FROM mysql:latest

# MySQL密码
ENV MYSQL_ROOT_PASSWORD=123456

# 暴露 MySQL 的默认端口
EXPOSE 3306

(1)使用 FROM 关键字指定了基础镜像。在这个示例中,我们选择了官方的 MySQL 镜像,并使用 :latest 标签,表示我们将使用最新的 MySQL 版本作为基础。

(2)使用 ENV 关键字设置了一个环境变量 MYSQL_ROOT_PASSWORD,用于指定 MySQL 数据库的 root 用户的密码。

(3)使用 EXPOSE 关键字指定了容器将要监听的端口。在这里,我们暴露了容器内部的 3306 端口,这是 MySQL 数据库的默认端口。

构建 Docker 镜像

打开终端,并导航到包含 Dockerfile 的目录,执行以下命令来构建 Docker 镜像:

docker build -t my-mysql-container .

其中,my-mysql-container 是你为镜像指定的名称,. 表示 Dockerfile 在当前目录。

查看已下载的镜像

使用docker images命令可以列出所有本地已下载的Docker镜像:

docker images

运行 mysql 命令

docker run -itd --name mysql-test -p 3306:3306   my-mysql-containe

其中,my-mysql-container 是你为镜像指定的名称。

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/11222

(0)
凯影的头像凯影
上一篇 2024年1月31日 下午2:37
下一篇 2024年2月2日 下午2:04

相关推荐

  • CentOS7单用户修改密码

    重启开机  按‘e’进入编辑模式 在下边 编辑修改两处:ro改为rw,在LANG=en_US.UFT-8后面添加 init=/bin/sh 按Ctrl+x 重启进入单用户,修改密码 由于selinux开启着的需要执行以下命令更新系统信息,否则重启之后密码未生效 重启系统

    2023年6月12日
    86600
  • 通过远程桌面连接Windows实例,提示“为安全考虑,已锁定该用户账户,原因是登录尝试或密码更改尝试过多”错误怎么办?

    问题描述 使用远程桌面连接Windows系统的ECS实例,提示“为安全考虑,已锁定该用户账户,原因是登录尝试或密码更改尝试过多”错误,具体报错信息如下图所示。 问题原因 Windows系统的ECS实例系统组策略中配置了用户锁定策略,在登录时输入错误的密码次数过多,该账户会被锁定,导致远程桌面无法登录。 解决方案 您可以修改Windows实例组策略账户锁定阈值…

    2023年11月13日
    1.8K00
  • CentOS 7 安装 JDK 11

    现在很多编译器和软件都开始要求使用 JDK 11 了。 因此我们希望在 CentOS 上安装 JDK 11。 运行下面的命令: 如果你的系统中还装有不同版本的 JDK 的话。你需要运行: 来选择默认的 JDK。 随后你就可以验证安装的 JDK 了。

    2023年3月11日
    98400
  • nginx使用htpasswd实现站点账密登录

    一:介绍 在Web应用程序的开发中,安全性是一项至关重要的任务。当用户需要访问敏感信息或执行特定操作时,需要使用账号和密码进行身份验证,htpasswd是Apache HTTP服务器下的一款用于HTTP用户basic认证工具,可用来建立和更新存储用户名、密码,同时生产用于 http 基本认证的工具 二:htpasswd安装 三:htpasswd配置密码 该命…

    2024年6月3日
    1.1K00
  • mysql connect unblock with mysqladmin flush-hosts

    原因同一个ip在短时间内产生太多(超过max_connect_errors的最大值)中断的数据库连接而导致的阻塞。 查看 max_connect_errors show variables like ‘max_connect_errors’; 解决前提:需要换一个IP地址连接 方法一增大 max_connect_errors set …

    2024年2月21日
    91600

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信