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/9848

(0)
凯影的头像凯影
上一篇 2023年10月18日 下午3:24
下一篇 2023年10月19日 下午4:12

相关推荐

  • 解决crond引发大量sendmail、postdrop进程导致内存使用过大问题

    现象:客户反馈机器卡顿,上面只运行了一个宝塔,疑似中了木马 分析过程:top发现内存使用过高,ps -aux发现大量postdrop、sendmail、crond进程,而postdrop是由sendmail启动的,sendmail是由crond启动的。 crond在执行脚本时会将脚本输出信息以邮件的形式发送给系统用户,所以必然要调用sendmail,而sen…

    2022年12月6日
    2.0K00
  • CDN 加速 – 隐藏真实 IP – 复活 IP

    CDN 一词相信很多朋友都不会陌生,网上也经常会看到相关报道。或许大部分人都知道 CDN 加速可以提升网站的打开速度及用户下载资源的速度,而同时也有不少朋友还不清楚 CDN 是什么?有什么用途?它是如何实现加速的呢?下面为大家整理了一些通俗易懂的知识点。 CDN 是什么 CDN 的全称:CONTENT DELIVERY NETWORK,即 内容分发…

    2023年11月9日
    76000
  • centos 升级内核

    一、关于内核版本的定义: 版本性质:主分支ml(mainline),稳定版(stable),长期维护版lt(longterm) 版本命名格式为 “A.B.C”: 数字 A 是内核版本号:版本号只有在代码和内核的概念有重大改变的时候才会改变,历史上有两次变化: 第一次是1994年的 1.0 版,第二次是1996年的 2.0 版,第三次是2011年的 3.0 版…

    2023年3月16日
    1.2K00
  • nginx使用htpasswd实现站点账密登录

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

    2024年6月3日
    1.3K00
  • SonarQube支持Gitlab授权登录

    背景 部署好SonarQube之后,由于我们内部使用的是自建的Gitlab仓库,即每个开发同学都有Gitlab账号,SonarQube我们就可以使用上Gitlab登录,这样就不需要再维护一套用户体系了。 环境: SonarQube8.9.2 社区版 GitLab Enterprise Edition 11.10.4-ee 具体配置: Gitlab 配置: 在…

    2023年1月20日
    1.5K00

发表回复

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

在线咨询: QQ交谈

邮件:712342017@qq.com

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

关注微信