当前位置: 首页 > news >正文

找装修公司的网站/成都网络推广外包

找装修公司的网站,成都网络推广外包,网站制作哪家大,初级前端工程师工资首先进行简单的docker安装。要进行自定义镜像,我们需要选择一个基础镜像进行构建自己的镜像:其实说白了,就是在一个有基础定义好的容器内,执行安装各种程序的命令,生成 所谓的Dockerfile 文件,既然如此第一…

首先进行简单的docker安装。

要进行自定义镜像,我们需要选择一个基础镜像进行构建自己的镜像:其实说白了,就是在一个有基础定义好的容器内,执行安装各种程序的命令,生成 所谓的Dockerfile 文件,既然如此第一步我们首先需要找一个本地的镜像作为基础镜像来操作即可:

1

68220581841eba1ef4e65f8f757627dc.png

如上图所示,我们来以centos为基础镜像,来构建一个Dockerfile

2第二步我们需要构建一个目录,用于存放Dockerfile文件

b3e617e94f70733f611c0971b7659453.png

在root下构建docker_demo目录,存放 Dockerfile文件以及需要安装的程序文件即可,因为我要搭建PHP的自定义环境,所以我们再来搞一个PHP7的压缩包即可

wget http://am1.php.net/get/php-7.0.0.tar.gz/from/this/mirror

926f827fd30bac8695677e60dfbf4807.png

然后改名字

1dbe43143fdd810f7793f40230a92b97.png

现在PHP nginx都有了,至于COMPOSER可以在php安装成功以后再自行操作即可~~~

接下来就是编写Dockerfile文件了,在此之前,简单了解下Dockerfile编写的关键字格式:

FROM 代表基于哪个镜像

RUN 安装软件使用

MAINTAINER 镜像的创建者

CMD 容器启动时执行的命令,但是一个Dockerfile中只能有一条CMD命令,多条则只执行最后一条CMD

ENTRYPOINT 容器启动时执行的命令,但是一个Dockerfile中只能有一条CMD命令,多条则只执行最后一条

USER 使用哪个用户运行container

EXPOSE 容器内部服务暴露的端口,主机上还需要在run容器时,做端口映射:

docker run -d -p 80:8080 centos6xxx

上边命令表示把容器内部的8080端口映射到主机80端口上

ENV 用来设置环境变量

ADD 将主机上的文件拷贝到container内的对应路径,所有拷贝到容器中的文件和文件夹权限为0755,uid和gid为0,如果文件是可识别的压缩格式,则docker会帮忙解压缩,ADD只有在build镜像的时候运行一次,后面运行container的时候不会再重新加载了。

例子如:

ADD nginx-1.12.2.tar.gz /usr/local/src

VOLUME 可以将本地文件夹或者其他容器的文件夹挂在到容器内。

WORKDIR 切换目录使用,(相当于cd目录)

ONBUILD 指定的命令在构建镜像时不执行,而是在它的子镜像中执行。

学完了Dockerfile基础命令,我们来试着搞一搞这个环境.

docker pull centos

首先下载一个基础镜像,如果有这一步请忽略,下面是我的Dockerfile

# base image

# 基础镜像

FROM docker.io/centos

# MAINTAINER编写者

MAINTAINER xy61521@163.com

# put nginx-1.12.2.tar.gz into /usr/local/src and unpack nginx 来吧nginx 和PHP提前都放进基础镜像的/usr/local/src目录下,方便编译安装

ADD nginx-1.12.2.tar.gz /usr/local/src

ADD php-7.0.0.tar.gz /usr/local/src

# running required command 安装Nginx的一系列乱七八糟的依赖包

RUN yum install -y gcc gcc-c++ glibc make autoconf openssl openssl-devel

RUN yum install -y libxslt-devel -y gd gd-devel GeoIP GeoIP-devel pcre pcre-devel

RUN useradd -M -s /sbin/nologin nginx

# change dir to /usr/local/src/nginx-1.12.2

WORKDIR /usr/local/src/nginx-1.12.2

# execute command to compile nginx

RUN ./configure --user=nginx --group=nginx --prefix=/usr/local/nginx --with-file-aio --with-http_ssl_module --with-http_realip_module --with-http_addition_module --with-http_xslt_module --with-http_image_filter_module --with-http_geoip_module --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_auth_request_module --with-http_random_index_module --with-http_secure_link_module --with-http_degradation_module --with-http_stub_status_module && make && make install

#先装个本地Mysql

RUN yum install -y wget

RUN wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm

RUN rpm -ivh mysql57-community-release-el7-8.noarch.rpm

RUN yum install -y mysql-server

#截止此,开始安装php,宇宙惯例,开始安装一些编译的依赖包

RUN yum -y install epel-release

RUN yum -y install libmcrypt-devel

RUN yum -y install libxml2 libxml2-devel openssl openssl-devel curl-devel libjpeg-devel libpng-devel freetype-devel

WORKDIR /usr/local/src/php-7.0.0

#编译 安装

RUN ./configure --prefix=/usr/local/php7 --with-config-file-path=/usr/local/php7/etc --with-config-file-scan-dir=/usr/local/php7/etc/php.d --with-mcrypt=/usr/include --enable-mysqlnd --with-mysqli --with-pdo-mysql --enable-fpm --with-fpm-user=nginx --with-fpm-group=nginx --with-gd --with-iconv --with-zlib --enable-xml --enable-shmop --enable-sysvsem --enable-inline-optimization --enable-mbregex --enable-mbstring --enable-ftp --enable-gd-native-ttf --with-openssl --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --enable-session --with-curl --with-jpeg-dir --with-freetype-dir --enable-opcache && make && make install

RUN cp php.ini-production /usr/local/php7/etc/php.ini

构建成功Dockerfile文件之后,docker build进行构建

docker build -t centos_lnmp:v1 .

后边的.代表相对路径当前目录,也可使用绝对路径

然后就是漫长的等待

4d9fea42eaba6ecd09a74143fc20cf81.png

直到构建成功镜像,至此我们重新开始

docker images

e3e0564fc72018b70db486871809d083.png

我们看到该镜像已经构建成功(有一点几率构建失败,失败的话删除容器和镜像重新构建即可),然后运行

docker run -dt -p 80:80 centos_lnmp:v1

84bb126531bd8e730d6b4742285394d6.png

成功后则可进入容器,配置nginx php 。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

http://www.lbrq.cn/news/809965.html

相关文章:

  • 钢铁行业公司网站模板/seo名词解释
  • 跨境独立网站怎么建设/seo还有未来吗
  • 网站建设与优化合同/网店推广的作用是
  • 网站名字重复/石家庄seo报价
  • 苏州协会网站建设/百度一下百度搜索百度
  • 做网站能用本地的数据库嘛/百度联盟官网登录入口
  • 泊头网站建设服务/泰州seo
  • 网站开发助理是干啥的/新闻播报最新
  • 网络架构中sdn是指/长沙百度推广优化排名
  • 网站开发系统测试/2023年最新新闻简短摘抄
  • 全国行业名录搜索系统官网/快速seo关键词优化技巧
  • php旅游类网站开发毕业设计/网站营销策划公司
  • 邢台网站制作费用/seo在线优化
  • 租号网站咋做/广州新闻播报
  • 刘家窑网站建设公司/seo外包网络公司
  • php做网站很快嘛/西安关键词排名软件
  • react企业网站模板/照片查询百度图片搜索
  • 租房子做民宿在哪个网站/电商关键词一般用哪些工具
  • 网站建设的大公司/seo优化是怎么回事呢
  • 音乐网站设计/网络推广seo是什么
  • 广州红鼎网站建设有限公司怎么样/优化网站服务
  • 湖北建设信息网站/营销推广渠道有哪些
  • 做关于灯饰的网站/平台app如何推广
  • 贸易公司 网站 扶持/网页怎么搜索关键词
  • 一个公司做2个产品网站怎么做的/外链生成器
  • 网站腾讯qq对话框怎么做/网站收录提交
  • 能进封禁网站的浏览器/沈阳seo建站
  • 竞拍网站开发/厦门人才网个人登录
  • 班级动态网站怎么做/2023年4 5月份疫情结束吗
  • 网站建设如何在宣传部备案/潜江seo
  • 婚纱摄影管理系统(发送邮箱、腾讯地图API、物流API、webSocket实时聊天、协同过滤算法、Echarts图形化分析)
  • Python动态规划:从基础到高阶优化的全面指南
  • 数分思维10:用户增长
  • django ManyToManyField 如何添加数据
  • 电子电路设计学习
  • STM32-USART串口实现接收数据三种方法(1.根据\r\n标志符、2.空闲帧中断、3.根据定时器辅助接收)