nginx和php
apache和php
Docker Volume 之权限管理
1.nginx容器
docker run –name nginx1 -d -p 80:80 -v /www:/usr/share/nginx/html –privileged=true nginx:1.13
网站目录、配置目录、nginx.conf
docker run –name nginx1 -d -p 80:80 -v /mnt/www:/usr/share/nginx/html -v /mnt/centos71/nginx.conf:/etc/nginx/nginx.conf -v /mnt/centos71/conf.d:/etc/nginx/conf.d nginx:1.13
2.redis容器
docker run -d -p 6379:6379 -it zqifa/redis
3.mysql容器
docker run -p 3306:3306 -v ~/opt/data/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -it zqifa/mysql
docker run -p 3306:3306 -v ~/opt/data/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -it zqifa/mysql mysql:5.7
4.php容器
docker run --name php56-apache -d -p 80:80 -v /mnt/www:/var/www/html --privileged=true php:5.6-apache
5.memcached容器
docker run --name memcached-ct -d -p 11211:11211 memcached:latest
其他命令
docker-php-entrypoin
docker ENTRYPOINT
lamp
分开安装:方便软件升级
全部安装在一个容器:简单快捷
安装memcached扩展
curl -O https://launchpadlibrarian.net/165454254/libmemcached-1.0.18.tar.gz
cd libmemcached-1.0.18
tar -xvzf libmemcached-1.0.18.tar.gz
./configure --with-memcached --disable-memcached-sasl
make && make install
apt-get install zlib1g-dev
docker php安装
FROM hub.c.163.com/library/php:7.1-fpm
COPY redis-3.1.2.tgz /home/redis-3.1.2.tgz
COPY memcached-3.0.3.tgz /home/memcached-3.0.3.tgz
COPY xdebug-2.5.1.tgz /home/xdebug-2.5.1.tgz
RUN apt-get update && apt-get install -y \
libfreetype6-dev \
libjpeg62-turbo-dev \
libmcrypt-dev \
libpng12-dev \
libz-dev libmemcached-dev \
&& docker-php-ext-install gd \
&& docker-php-ext-install pdo_mysql \
&& pecl install redis-3.1.2.tgz && echo "extension=redis.so" > /usr/local/etc/php/conf.d/redis.ini \
&& pecl install memcached-3.0.3.tgz && echo "extension=memcached.so" > /usr/local/etc/php/conf.d/memcached.ini \
&& rm -r /home/memcached-3.0.3.tgz \
&& tar -xf /home/xdebug-2.5.1.tgz \
&& rm -rf /home/xdebug-2.5.1.tgz \
&& mkdir -p /usr/src/php/ext \
&& mv xdebug-2.5.1 /usr/src/php/ext/xdebug \
&& docker-php-ext-install xdebug \
&& rm -rf /home/redis-3.1.2.tgz
WORKDIR /opt
RUN usermod -u 1000 www
VOLUME ["/opt"]
CMD /bin/bash
第一行必须指令基于的基础镜像
From ubutu
维护者信息
MAINTAINER docker_user docker_user@mail.com
镜像的操作指令
apt/sourcelist.list
RUN apt-get update && apt-get install -y ngnix
RUN echo "\ndaemon off;">>/etc/ngnix/nignix.conf
容器启动时执行指令
CMD /usr/sbin/ngnix
mysql REPLACE into
INSERT IGNORE INTO
INSERT INTO
WHERE NOT EXISTS
mysql不重复添加
含有 memcached、redis、gd、xdebug扩展
使用了两种方式安装扩展
docker-php-ext-install
pecl install
docker run --name php56-apache -d -p 80:80 -v /mnt/www:/var/www/html -v /mnt/www/docker/apache2/apache2.conf:/etc/apache2/apache2.conf -v /mnt/www/docker/beta.sites:/etc/apache2/beta.sites --privileged=true php:5.6-apache
docker run --name php56-apache -d -p 80:80 -v /mnt/www:/var/www/html -v /mnt/www/docker/apache2/apache2.conf:/etc/apache2/apache2.conf --privileged=true php:5.6-apache
docker run --name php56-apache -d -p 80:80 -v /mnt/www/centos71/apache2:/etc/apache2 --privileged=true php:5.6-apache
FROM php:7.2-fpm
COPY redis-3.1.6.tgz /home/redis-3.1.6.tgz
COPY memcached-3.0.4.tgz /home/memcached-3.0.4.tgz
COPY xdebug-2.6.0.tgz /home/xdebug-2.6.0.tgz
RUN apt-get update && apt-get install -y \
libfreetype6-dev \
libjpeg62-turbo-dev \
libmcrypt-dev \
libpng-dev \
libz-dev libmemcached-dev \
&& docker-php-ext-install gd \
&& docker-php-ext-install pdo_mysql \
&& pecl install redis-3.1.6.tgz && echo "extension=redis.so" > /usr/local/etc/php/conf.d/redis.ini \
&& pecl install memcached-3.0.4.tgz && echo "extension=memcached.so" > /usr/local/etc/php/conf.d/memcached.ini \
&& rm -r /home/memcached-3.0.4.tgz \
&& tar -xf /home/xdebug-2.6.0.tgz \
&& rm -rf /home/xdebug-2.6.0.tgz \
&& mkdir -p /usr/src/php/ext \
&& mv xdebug-2.6.0 /usr/src/php/ext/xdebug \
&& docker-php-ext-install xdebug \
&& rm -rf /home/redis-3.1.6.tgz
WORKDIR /opt
RUN usermod -u 1000 www
VOLUME ["/opt"]
出处:www.l1mn.com
原文标题:docker学习笔记(1)
原文地址:https://www.l1mn.com/p/e05124.html
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。
Copyright © L1MN.COM 联系方式:l1mnfw@163.com