docker学习笔记(1)

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

本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。

分类:
标签:
评论

皖ICP备2023023451号

Copyright © L1MN.COM 联系方式:l1mnfw@163.com