Docker虚拟化技术系列之-DockerFile案例演练

简介:

Dockfile是一种被Docker程序能够解释的脚本,Dockerfile由一条一条的指令组成,每条指令对应Linux下面的一条命令。

Docker程序将这些Dockerfile指令翻译真正的Linux命令。Dockerfile有自己书写格式和支持的命令,Docker程序解决这些命令间的依赖关系,类似于Makefile。Docker程序将读取Dockerfile,根据指令生成定制的image。

相比镜像这种黑盒子,Dockerfile这种显而易见的脚本更容易被使用者接受,它明确的表明镜像是怎么产生的。有了Dockerfile,我们需要定制自己额外的需求时,只需在Dockerfile上添加或者修改指令,重新生成镜像即可。

给大家分享几个常用的案例,DockerFile企业案例实战,开放80端口和22端口配置案例:

1)开启SSH 22端口,并远程连接服务器,dockerfile内容如下:

设置基本的镜像,后续命令都以这个镜像为基础

FROM centos_lamp:v1

作者信息

MAINTAINER JFEDU.NET

# RUN命令会在上面指定的镜像里执行任何命令

RUN yum install passwd openssl openssh-server -y

RUN echo '123456' | passwd --stdin root

RUN mkdir /var/run/sshd

#暴露ssh端口22

EXPOSE  22

#设定运行以daemon方式启动sshd

CMD /usr/sbin/sshd -D

wKiom1ir5W_RJrhZAACvyqnHwvE778.png-wh_50

2)开启Apache 80端口,并远程连接服务器,dockerfile内容如下:

设置基本的镜像,后续命令都以这个镜像为基础

FROM centos_lamp:v1

作者信息

MAINTAINER JFEDU.NET

# RUN命令会在上面指定的镜像里执行任何命令

RUN yum install pcre-devel -y

RUN yum install httpd httpd-devel -y

#暴露ssh端口80

EXPOSE 80

#启动httpd

CMD ["/usr/sbin/apachectl", "-D","FOREGROUND"]

wKioL1ir5YyQb4AEAACEV5KzZbs835.png-wh_50

最终截图如下:

wKiom1ir5aDxFZ-7AAC0kWT7lF4326.png-wh_50

到此结束了吗?远远没有哦,思考一个问题,如何同时开放多个端口呢,例如802280803306端口对外访问呢?


本文转自 wgkgood 51CTO博客,原文链接:http://blog.51cto.com/wgkgood/1899844
相关文章
|
27天前
|
机器学习/深度学习 监控 安全
解密虚拟化弹性内存:五大核心技术与实施策略
本文深入解析虚拟化环境中实现内存弹性管理的五大核心技术与实施策略。内容涵盖内存架构演进、关键技术原理、性能优化方法及典型问题解决方案,助力提升虚拟机密度与资源利用率。
74 0
|
1月前
|
Kubernetes Cloud Native 持续交付
Docker:轻量级容器化技术解析
Docker:轻量级容器化技术解析
|
1月前
|
运维 测试技术 Docker
Docker:轻量级容器化技术革命
Docker:轻量级容器化技术革命
|
6月前
|
Kubernetes Docker 容器
Kubernetes与Docker参数对照:理解Pod中的command、args与Dockerfile中的CMD、ENTRYPOINT。
需要明确的是,理解这些都需要对Docker和Kubernetes有一定深度的理解,才能把握二者的区别和联系。虽然它们都是容器技术的二个重要组成部分,但各有其特性和适用场景,理解它们的本质和工作方式,才能更好的使用这些工具,将各自的优点整合到生产环境中,实现软件的快速开发和部署。
201 25
|
6月前
|
存储 虚拟化 Docker
|
6月前
|
安全 API 算法框架/工具
大模型文件Docker镜像化部署技术详解
大模型文件Docker镜像化部署技术详解
841 2
|
6月前
|
开发工具 虚拟化 git
自学软硬件第755 docker容器虚拟化技术youtube视频下载工具
docker容器虚拟化技术有什么用?怎么使用?TubeTube 项目使用youtube视频下载工具
|
6月前
|
安全 开发者 Docker
Docker技术背景与应用:解决现代开发中的关键问题
Docker作为一种革命性的容器化技术,极大地改变了现代软件开发的方式。通过解决环境一致性、依赖管理、部署复杂性和资源利用率等问题,Docker为开发者提供了高效、灵活的开发和部署环境。尽管面临着一些挑战,但随着技术的发展和完善,Docker将继续在现代软件开发中发挥重要作用。作为全栈工程师,掌握并善用Docker技术,将为我们的开发工作带来更多便利和可能性。 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
|
10月前
|
Kubernetes Docker 容器
掌握Docker容器化技术:从入门到实战
掌握Docker容器化技术:从入门到实战
160 0
|
Docker 容器
Docker技术入门与实战
GitBookhttps://www.gitbook.com/book/yeasy/docker_practice/details pdf 版本 下载 epub 版本 下载
2153 0