[toc]

Docker安装

使用阿里云官方脚本安装

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

手动安装

Ubuntu 14.04 16.04 (使用apt-get进行安装)

# step 1: 安装必要的一些系统工具
sudo apt-get update
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
# step 2: 安装GPG证书
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
# Step 3: 写入软件源信息
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
# Step 4: 更新并安装 Docker-CE
sudo apt-get -y update
sudo apt-get -y install docker-ce

# 安装指定版本的Docker-CE:
# Step 1: 查找Docker-CE的版本:
# apt-cache madison docker-ce
#   docker-ce | 17.03.1~ce-0~ubuntu-xenial | http://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages
#   docker-ce | 17.03.0~ce-0~ubuntu-xenial | http://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages
# Step 2: 安装指定版本的Docker-CE: (VERSION 例如上面的 17.03.1~ce-0~ubuntu-xenial)
# sudo apt-get -y install docker-ce=[VERSION]

CentOS 7 (使用yum进行安装)

# step 1: 安装必要的一些系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# Step 2: 添加软件源信息
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# Step 3: 更新并安装 Docker-CE
sudo yum makecache fast
sudo yum -y install docker-ce
# Step 4: 开启Docker服务
sudo service docker start

# 注意:
# 官方软件源默认启用了最新的软件,您可以通过编辑软件源的方式获取各个版本的软件包。例如官方并没有将测试版本的软件源置为可用,你可以通过以下方式开启。同理可以开启各种测试版本等。
# vim /etc/yum.repos.d/docker-ce.repo
#   将 [docker-ce-test] 下方的 enabled=0 修改为 enabled=1
#
# 安装指定版本的Docker-CE:
# Step 1: 查找Docker-CE的版本:
# yum list docker-ce.x86_64 --showduplicates | sort -r
#   Loading mirror speeds from cached hostfile
#   Loaded plugins: branch, fastestmirror, langpacks
#   docker-ce.x86_64            17.03.1.ce-1.el7.centos            docker-ce-stable
#   docker-ce.x86_64            17.03.1.ce-1.el7.centos            @docker-ce-stable
#   docker-ce.x86_64            17.03.0.ce-1.el7.centos            docker-ce-stable
#   Available Packages
# Step2 : 安装指定版本的Docker-CE: (VERSION 例如上面的 17.03.0.ce.1-1.el7.centos)
# sudo yum -y install docker-ce-[VERSION]

安装校验

root@iZbp12adskpuoxodbkqzjfZ:$ docker version
Client:
 Version:      17.03.0-ce
 API version:  1.26
 Go version:   go1.7.5
 Git commit:   3a232c8
 Built:        Tue Feb 28 07:52:04 2017
 OS/Arch:      linux/amd64

Server:
 Version:      17.03.0-ce
 API version:  1.26 (minimum version 1.12)
 Go version:   go1.7.5
 Git commit:   3a232c8
 Built:        Tue Feb 28 07:52:04 2017
 OS/Arch:      linux/amd64
 Experimental: false

使用docker容器镜像加速

登陆(阿里云开发者平台)[https://dev.aliyun.com/search.html],选择”管理中心”.

在”容器镜像服务”中选择”镜像加速服务”,依照操作文档进行配置.

配置php网页

  1. 新建Dockerfile文件
    FROM php:7.0-apache
    COPY src/ /var/www/html/
    

src目录下放置网站源码

  1. 构建docker镜像并运行
    $ docker build -t my-php-app .
    $ docker run -d --name my-running-app my-php-app
    

如果需要指定端口号使用”-p”参数即可

apache2安装

apt-get install apache2

service apache2 stop

配置负载均衡

  1. 加载代理模块
    a2enmod proxy proxy_ajp proxy_balancer proxy_connect proxy_ftp proxy_http lbmethod_byrequests
    
  2. 修改代理配置
    sudo vi /etc/apache2/mods-enabled/proxy.conf
    

修改/新增以下内容

    ProxyRequests Off  
    <Proxy *>  
        Order deny,allow  
        Deny from all  
        #Allow from .your_domain.com  
    </Proxy>
  1. 修改默认转发配置
    vim /etc/apache2/sites-available/000-default.conf
    

新增以下负载均衡配置

        ProxyRequests Off
         Proxypass / balancer://proxy/ 
         <Proxy balancer://proxy>
             Order Deny,Allow
             Allow from all
             BalancerMember http://192.168.103.192:8080
             BalancerMember http://192.168.103.195:8080
         </Proxy>
    </VirtualHost>

BalancerMember后的参数改成docker配置网站运行的地址,如果在同一主机上运行了多个网站项目,那么地址都为”localhost”,只是端口号有所变更而已

  1. 重启apache2服务
    service apache2 restart
    

参考资料

  • (Docker CE 镜像源站)[https://yq.aliyun.com/articles/110806?spm=5176.8351553.0.0.14491991R3LaV7]
  • (ubuntu上Apache2实现负载均衡)[http://blog.51cto.com/690156297/1655893]