iis下建立asp网站,网站开发技术合同,网络营销岗位技能,黄陂区建设局网站前言#xff1a; Docker镜像是容器化应用程序的打包和分发单元#xff0c;包含了应用程序及其所有依赖项#xff0c;实现了应用程序的可移植性和一致性。 文章目录 使用Dockerfile创建自定义镜像实践练手1. 创建基于ubuntu的自定义镜像#xff0c;并安装nginx2. 配置Redis容…前言 Docker镜像是容器化应用程序的打包和分发单元包含了应用程序及其所有依赖项实现了应用程序的可移植性和一致性。 文章目录 使用Dockerfile创建自定义镜像实践练手1. 创建基于ubuntu的自定义镜像并安装nginx2. 配置Redis容器3. 配置MySQL4. 配置CentOS镜像最佳实践 送书活动1.同构编程中的数学2. Python深度学习“四大名著”之一全新PyTorch版 使用Dockerfile创建自定义镜像
Docker是一种流行的容器化平台它可以帮助开发人员将应用程序及其依赖项打包到一个独立的容器中。这样的容器可以在不同的环境中轻松部署和运行确保应用程序的可移植性和一致性。
首先创建一个空的文件夹并在其中创建一个名为Dockerfile的文件。
打开Dockerfile并添加以下内容作为基本的模板
# 使用基础镜像作为起点
FROM base_image# 添加/复制文件到镜像中
COPY source destination# 执行命令来安装依赖项
RUN command在上述中将base_image替换为您选择的基础镜像source和destination替换为要复制的文件或目录的路径以及command替换为要执行的命令。
接下来根据自己的需求添加更多的指令。使用RUN指令来安装软件包、更新系统等。使用ENV指令来设置环境变量使用EXPOSE指令来声明容器要监听的端口号等。
完成Dockerfile后可以使用以下命令来构建自定义镜像
docker build -t image_name .其中-t选项用于指定镜像的名称和标签.表示Dockerfile所在的当前目录。
构建完成后使用以下命令来查看已构建的镜像列表
docker images理解镜像层和容器的关系 Docker镜像由一系列只读的镜像层组成每个镜像层都包含了一个或多个文件系统的更改。这些更改可以是添加、删除或修改文件。镜像层是层叠的每个层都构建在前一个层之上。这种层级结构使得镜像的复用和共享变得更加高效。
当使用镜像创建容器时Docker会在镜像层之上创建一个可写的容器层。容器层允许在运行时对文件系统进行更改例如添加、修改或删除文件。这些更改只会影响到容器层而不会改变原始的镜像层。这种分层结构可以实现容器的轻量级和快速启动。
实践练手
可以在Linux系统中使用Docker轻松地拉取、配置和运行Redis、MySQL和CentOS镜像。Docker提供了一个方便和可移植的方式来部署和运行各种服务和应用程序确保了应用程序的可移植性和一致性。
1. 创建基于ubuntu的自定义镜像并安装nginx
# 使用基础镜像作为起点
FROM ubuntu:latest# 更新apt源并安装Nginx
RUN apt-get update apt-get install -y nginx# 暴露80端口
EXPOSE 80# 启动Nginx服务
CMD [nginx, -g, daemon off;]
在包含Dockerfile的目录中使用以下命令构建镜像
docker build -t my-nginx .这将根据Dockerfile构建一个名为my-nginx的镜像。
构建完成后可以使用以下命令运行镜像
docker run -d -p 80:80 my-nginx在后台运行一个基于my-nginx镜像的容器并将宿主机的80端口映射到容器的80端口。
在浏览器中访问http://localhost来查看Nginx欢迎页面。
2. 配置Redis容器
确保已经在Linux系统上安装了Docker。可以使用以下命令来检查Docker是否已经安装
docker version从Docker Hub上拉取Redis镜像
docker pull redis使用以下命令来运行Redis容器 将在后台运行一个名为my-redis的Redis容器并将宿主机的6379端口映射到容器的6379端口。
docker run -d --name my-redis -p 6379:6379 redis使用Redis客户端连接到Redis容器。例如使用以下命令连接到Redis容器
redis-cli -h localhost -p 63793. 配置MySQL
使用以下命令从Docker Hub上拉取MySQL镜像
docker pull mysql使用以下命令来运行MySQL容器
docker run -d --name my-mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORDpassword mysql将在后台运行一个名为my-mysql的MySQL容器并将宿主机的3306端口映射到容器的3306端口。通过-e选项指定了MySQL的root用户密码为password。 使用MySQL客户端连接到MySQL容器。例如使用以下命令连接到MySQL容器
mysql -h localhost -P 3306 -u root -p输入之前设置的密码即可成功连接到MySQL容器。
4. 配置CentOS镜像
使用以下命令从Docker Hub上拉取CentOS镜像
docker pull centos使用以下命令来运行CentOS容器
docker run -it --name my-centos centos将在交互模式下运行一个名为my-centos的CentOS容器。 可以在CentOS容器中执行各种操作和命令。例如安装软件包、修改配置文件等。
# 在容器中安装软件包
yum install package-name# 修改配置文件
vi path-to-file在完成所需的操作后您可以使用以下命令退出并停止CentOS容器
exit
docker stop my-centos最佳实践
使用最小化的基础镜像以减小镜像的大小和安全风险。合并多个RUN指令为一个以减少镜像层数。使用.dockerignore文件来排除不必要的文件和目录。避免在RUN指令中使用无关的缓存以减小镜像的大小。定期更新基础镜像和软件包以保持镜像的安全性和稳定性。
送书活动
1.同构编程中的数学
近年来随着人工智能、大规模分布式计算、多核CPU和异构计算等的发展计算机中的各种编程技术在编程语言、软件架构、编译器、硬件体系结构、集成电路设计等方面都有着剧烈的变化。编程语言方面越来越多的主流语言引入函数式编程的概念。 本书从数字、递归、对称、范畴、融合、无穷、悖论七个方面介绍了计算机程序的数学基础和原理并以“同构”概念为线索揭示出编程本质上是和数学同构的。
感兴趣的小伙伴可以自行阅读购买 当当网购买链接同构编程中的数学
2. Python深度学习“四大名著”之一全新PyTorch版 近年来机器学习方法凭借其理解海量数据和自主决策的能力已在医疗保健、 机器人、生物学、物理学、大众消费和互联网服务等行业得到了广泛的应用。 《Python机器学习基于PyTorch和Scikit-Learn》这本书的定位是把机器学习理论和工程实践结合起来从而降低读者的阅读门槛。从数据驱动方法的基础知识到最新的深度学习框架本书每一章都提供了机器学习代码示例用于解决实际应用中的机器学习问题。 这是一本全面介绍在PyTorch环境下学习机器学习和深度学习的综合指南可以作为初学者的入门教程也可以作为读者开发机器学习项目时的参考书。
深入介绍了机器学习方法的基础知识不仅提供了构建机器学习模型的说明而且提供了构建机器学习模型和解决实际问题的基本准则。无论是机器学习入门新手还是计划跟踪机器学习进展的研发人员都可以将本书作为使用Python进行机器学习的不二之选。
感兴趣的小伙伴可以自行阅读购买 当当网购买链接Python深度学习“四大名著”之一全新PyTorch版 本次送书两本评论区抽两位小伙伴送书 活动时间截止到2023-07-18 9:00:00 中奖的小伙伴从以上2本书籍中任选一本 抽奖方式利用程序进行抽奖。 参与方式关注博主、点赞、收藏评论区评论 “人生苦短我用AI”单账号最多评论三次