一、安装nginx
- 拉取nginx
docker pull nginx:latest
查看本地镜像列表(即可看到nginx)
docker images
- 运行容器
docker run --name nginx-test -p 80:80 -d nginx
参数说明:
--name nginx-test 容器名称
-p 80:80:端口进行映射,将本地8080端口映射到容器内部的80端口。
-d nginx:设置容器在在后台一直运行。
-
验证安装
-
使用数据卷映射配置nginx配置
[root@node01 ~]# docker exec -it nginx-test bash root@7e98f7172948:/# whereis nginx nginx: /usr/sbin/nginx /usr/lib/nginx /etc/nginx /usr/share/nginx
创建目录
mkdir -p /usr/local/nginx
依次在该目录下创建三个文件目录
创建www目录
mkdir -p /usr/local/nginx/html
创建日志目录
mkdir -p /usr /local/nginx/logs
创建配置文件目录
mkdir -p /usr / local/nginx/conf
拷贝docker nginx配置文件
docker cp nginx-test:/etc/nginx/nginx.conf /usr/local/nginx/conf [root@node01 conf]# docker cp nginx-test:/etc/nginx/conf.d /usr/local/nginx/conf [root@node01 conf]# ls conf.d nginx.conf
删除已存在的nginx
[root@node01 conf]# docker stop nginx-test nginx-test [root@node01 conf]# docker rm nginx-test nginx-test
安装数据卷创建nginx
docker run -d -p 80:80 --name nginx-test \ -v /usr/local/nginx/html:/usr/share/nginx/html \ -v /usr/local/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \ -v /usr/local/nginx/conf/conf.d/default.conf:/etc/nginx/conf.d/default.conf \ -v /usr/local/nginx/logs:/var/log/nginx nginx
编写index.html
echo '<H1>hello nginx!<H1/>' > /usr/local/nginx/html/index.html
二、安装nginx集群
1.安装3台tomcat
创建三台tomcat的数据卷
echo 'hi docker' > /root/docker-data/ROOT/index.html
启动tomcat
docker run -d --name tomcat-8080 -p 8080:8080 -v /root/docker-data/:/usr/local/tomcat/webapps/ tomcat
docker run -d --name tomcat-8081 -p 8081:8080 -v /root/docker-data/:/usr/local/tomcat/webapps/ tomcat
docker run -d --name tomcat-8082 -p 8082:8080 -v /root/docker-data/:/usr/local/tomcat/webapps/ tomcat
修改nginx配置 vi /usr/local/nginx/conf/nginx.conf
upstream nginxcluster{
server 192.168.147.110:8080;
server 192.168.147.110:8081;
server 192.168.147.110:8082;
}
include /etc/nginx/conf.d/*.conf;
修改修改nginx配置 vi /usr/local/nginx/conf/config.d/default.conf
#access_log /var/log/nginx/host.access.log main;
location /{
proxy_pass http://nginxcluster;
}
location /a {
root /usr/share/nginx/html;
index index.html index.htm;
}