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

相关推荐

  • Windows 添加新用户,并授予该用户远程登录权限

    首先添加新用户: 以管理员身份登录,选择“更改账户设置”:  选择 “其他用户” –> “将其他人添加到这台电脑”: 选择  “用户”: 单击鼠标右键,选择  “新用户”: 选择新建用户,单击鼠标右键,选择 “属性”: 接下来授予远程登陆权限: ——只需要将该用户加入 “Remote Desktop Users” 组即可。

    2023年6月29日
    1.7K00
  • 清华源连接失败原因与解决 CondaHTTPError SSLError

    Conda 清华源连接失败原因与解决 问题描述 在我设置好国内源之后,用conda创建虚拟环境,下载python版本时出现以下错误。 我的~/.condarc内容(即conda channels设置)如下 解决方案 在我查阅了多篇博客,尝试了多种方案之后,终于找到两种解决方案: 两种方法选一种即可 原因分析 https协议比http协议多了SSL,TLS等验…

    2023年3月23日
    3.0K00
  • Windows设置多用户同时远程登录

    在我们日常使用Windows系统的服务器时,有时候一台服务器需要多用户同时在线使用,但是Windows系统默认的是单用户模式的,不过它也支持多用户同时在线,就是需要我们去设置一下即可: 1、在键盘上按Win+R键(也可以在开始菜单右键然后选择运行),在运行的输入框里面输入”gpedit.msc”命令、然后点击确定 2、在“计算机组策略…

    2022年6月14日
    2.0K00
  • linux手误rm后恢复文件

    误删文件还原可以分为两种情况 今天只分析文件被删除后,相关进程还存在的情况 这种一般是有活动的进程存在持续标准输入或输出,到时文件被删除后,进程PID依旧存在。这也是有些服务器删除一些文件但是磁盘不释放的原因 案例演示 创建一个文件 用tail -f打开rumenz.txt文件 目的是让rumenz.txt被删除后,进程依然存在 新开一个终端删除rumenz…

    2023年10月17日
    2.5K00
  • ubuntu 使用 ifupdown管理网络连接

    由于需要批量永久修改IP,研发提供的脚本是基于修改interfaces的,所以需要使用ifupdown,高版本的ubuntu使用的都是NetworkManager 卸载 NetworkManager 可能会影响你的网络连接配置,因此在卸载之前确保有其他方式管理网络连接。 步骤 1:备份当前配置 在卸载 NetworkManager 之前,最好备份当前的网络配…

    2024年5月21日
    1.6K00

发表回复

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

在线咨询: QQ交谈

邮件:712342017@qq.com

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

关注微信