IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> dockerfile基本结构和简单实例 -> 正文阅读

[系统运维]dockerfile基本结构和简单实例

FROM:表明基于什么镜像

LABEL:编写人联系方式之类的声明

USER:表明使用容器时候用的用户名或者id

RUN:构建指令,可以运行任何被基础image支持的命令

ADD:拷贝压缩文件到指定位置并且解压,但是需要在当前目录下,使用绝对url会报错

COPY:和add相似,但是不会解压,只进行拷贝,一般用于复制文件

EXPOSE:指定服务运行的端口

EVN:指定环境变量

CMD:容器运行时执行的默认命令,可以是shell命令,也可以是自定义脚本

ENTRYPOINT:运行容器时执行的shell命令,和CMD区别是,CMD可以被运行docker命令时后面指定命令顶替,但是他不会

VOLUME:指定容器挂载点到宿主机自动生成目录或者其他容器

WORKDIR:为RUN,CMD,COPY和ADD等设置工作目录

HEALTHCHECK:健康检查

简单的dockerfile实例:

构建nginx和php镜像:

先拉取centos镜像:

docker run -it centos:7

修改镜像yum源:

yum -y install wget

makedir /etc/yum.repos.d/dd

mv /etc/yum.repos.d/*.repo? ? /etc/yum.repos.d/dd

cd /etc/yum.repos.d

ls

wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
yum install -y net-tools vim-enhanced tree bash-completion iproute psmisc
yum clean all

exit

docker commit? ?451121ada12? myos:latstat
?

制作php镜像:

[root@docker]mkdir php; cd php

[root@docker]vim Dockerfile

FROM:myos:latstat

RUN ?yum install -y php-fpm
EXPOSE 9000
CMD ["/usr/sbin/php-fpm", "--nodaemonize"]

[root@docker]docker build -t myos:php . #验证

[root@docker]docker run -itd myos:php #后台服务需要-d参数

[root@docker]docker ps

[root@docker]docker exec -it deb37734e526 /bin/bash

[root@docker]ss -l

搭建nginx镜像

[root@docker]yum install -y gcc make pcre-devel openssl-devel

[root@docker]useradd nginx

[root@docker]tar -zxvf nginx-1.12.2.tar.gz? (去官网下包)

[root@docker]make nginx &&cd nginx

[root@docker]cp /root/nginx-1.12.2.tar.gz /root/nginx

[root@docker]vim Dockerfile

FROM myos:latest
RUN yum install -y gcc gcc-c++ make openssl-devel pcre-devel
ADD nginx-1.12.2.tar.gz /tmp
RUN cd /tmp/nginx-1.12.2 && \
? ? ./configure --prefix=/usr/local/nginx && \
? ? make && make install
RUN rm -rf /tmp/nginx-1.12.2*?
COPY nginx.conf /usr/local/nginx/conf? #(提前拷贝nginx配置文件到当前目录下)
WORKDIR /usr/local/nginx
EXPOSE ?80
CMD {"./sbin/nginx","-g","daemon off;"}
?

[root@docker]docker build -t myos:nginx .

[root@docker]docker run -itd myos:nginx

[root@docker]curl http://172.17.0.3:80

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-02-03 01:28:27  更:2022-02-03 01:29:05 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 7:26:03-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码