php是最好的语言

docker构建镜像并且上传dockerhub

构建自己的镜像并且上传dockerhub方便以后在别的服务器上也能快速搭建一个一摸一样的环境,

*****构建php镜像*****
随便在服务器上建立一个文件夹
mkdir -p /xutao/myphp
vi dockerfile   #这一步是生成dockerfile配置文件,名字必须是这个
在dockerfile写入如下代码

FROM php:7-fpm
RUN cd /usr/local/bin
RUN docker-php-ext-install pdo_mysql
RUN docker-php-ext-install mysqli
RUN curl -L -o /tmp/redis.tar.gz https://github.com/phpredis/phpredis/archive/3.1.3.tar.gz
RUN tar xfz /tmp/redis.tar.gz
RUN rm -r /tmp/redis.tar.gz
RUN mkdir -p /usr/src/php/ext
RUN mv /usr/local/bin/phpredis-3.1.3 /usr/src/php/ext/redis
RUN docker-php-ext-install redis
EXPOSE 9000
#EXPOSE 9001 这里可以暴露多个端口,这一行不用写进去!!!!

#FROM 基础镜像
#RUN 表示安装好后要运行的命令,这里我们是安装pdo_mysql、mysqli和redis
#EXPOSE 暴露对外的端口(这里可以暴露多个端口多写一行就可以了)
#其他更多参数(http://www.ywnds.com/?p=7611)
写完退出后在 dockerfile目录执行
docker build -t php_01 .  #这一步是构建一个名为php_01的镜像,这个镜像最后会安装好mysqli redis pdo_mysql

构建完成后使用docker images可以查看是否存在,也可以启动进入查看是否存在mysqli redis pdo_mysql等模块

*****构建好后我们上传dockerhub方便以后我们直接拉下来用*****

我们先去dockerhub官网申请一个账号,并且创建一个仓库,可以参考这个教程(https://blog.csdn.net/ximenghappy/article/details/66971035)
接下来给镜像打上标签
docker tag php_01 xutao15700353368/xutao:php_01   #(电话号码是以前的,骚扰没用。。。)
#docker tag <existing-image> <hub-user>/<repo-name>[:<tag>] php_01(镜像名字) xutao15700353368(dockerhub账号) xutao(dockerhub仓库)php_01(第二个是上传到仓库的标签名字)

docker images 
#我们可以看见多了这一条数据 xutao15700353368/xutao   php_01              1e5e21af93b5        13 minutes ago      496.7 MB

docker login  #登陆dockerhub

docker push xutao15700353368/xutao:php_01 #推送到dockerhub

上一步完成就可以在dockerhub看见自己的镜像了

******拉取dockerhub镜像*****
docker pull xutao15700353368/xutao:php_01

和上一篇一样只是上一篇是从公共库拉取,这一次是从自己的仓库拉取。
其余nginx和mysql构建镜像和上传,拉取是一样的,依葫芦画瓢


作者:xTao 分类:LNMP 浏览:2369 评论:0