【Docker-compose 安装Nginx、配置代理】

1.下载镜像
docker search nginx

docker pull nginx
2.创建挂载目录
#目录下创建nginx文件夹
mkdir nginx

#nginx目录下 
#创建挂载目录volumes
mkdir volumes

mkdir conf logs
3.制作 docker-compose.yml
touch docker-compose.yml
vim docker-compose.yml

docker-compose.yml文件:

version: '3'
services:
  server:
    image: nginx
    restart: always #随docker自动启动
    container_name: nginx
#    network_mode: host
    environment:
        - "TZ=Asia/Shanghai"
    volumes:
        - ./volumes/html:/usr/share/nginx/html
        - ./volumes/conf/nginx.conf:/etc/nginx/nginx.conf
        - ./volumes/conf.d/default.conf:/etc/nginx/conf.d/default.con
        - /var/www/sass-ui:/var/www/sass-ui #前端包
        - /var/www/sass-ui-out:/var/www/sass-ui-out
        - ./volumes/logs:/var/log/nginx
        - ./volumes/ssl:/opt/nginx/ssl
    ports:
        - "80:80"                                                                     
        - "443:443"

https设置config, 需要提供ssl证书
ssl_certificate /opt/nginx/ssl/STAR_est_com_integrated.crt;
ssl_certificate_key /opt/nginx/ssl/STAR_est_com.key;

4.nginx代理配置
vim volumes/conf/nginx.conf
user  nginx;
worker_processes  auto;

error_log  /var/log/nginx/error.log notice;
pid        /var/run/nginx.pid;


events {
   worker_connections  1024;
}


http {
   include       /etc/nginx/mime.types;
   default_type  application/octet-stream;

   log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                     '$status $body_bytes_sent "$http_referer" '
                     '"$http_user_agent" "$http_x_forwarded_for"';

   access_log  /var/log/nginx/access.log  main;

   sendfile        on;
   #tcp_nopush     on;

   keepalive_timeout  65;

   #gzip  on;

   include /etc/nginx/conf.d/*.conf;

   server {
       listen 80;
       server_name 172.20.2.1;
   
       location / {
               root /var/www/sass-ui;
               index index.html index.html;
       }
   }
   server {
       listen   443 ssl;
       server_name  est.com;
       ssl_certificate    /home/docker-compose/nginx/volumes/ssl/STAR_est_com_integrated.crt;
       ssl_certificate_key   /home/docker-compose/nginx/volumes/ssl/STAR_est_com.key; 
       ssl_session_cache    shared:SSL:1m;
       ssl_session_timeout  10m;
       ssl_ciphers  HIGH:!aNULL:!MD5;
       ssl_prefer_server_ciphers  on;
       location / {
           root /var/www/sass-ui-out;
           index index.html;
       }
 	}
}
#启动容器 docker-compose.yml同级目录下
docker-compose up -d
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要使用Docker Compose安装Nginx,可以按照以下步骤: 1. 创建一个名为docker-compose.yml的文件。 2. 在该文件中,定义一个名为“web”的服务。该服务使用Nginx镜像,并将其映射到主机上的端口80。 示例docker-compose.yml文件内容如下: ``` version: '3' services: web: image: nginx ports: - "80:80" ``` 3. 打开终端,进入包含docker-compose.yml文件的目录。 4. 运行以下命令以启动Nginx服务: ``` docker-compose up ``` 5. 等待Docker Compose下载Nginx镜像并启动服务。启动后,您可以通过访问http://localhost来测试Nginx是否正常工作。 注意:确保您的系统已经安装DockerDocker Compose。 ### 回答2: 要在Docker容器中安装Nginx,我们可以使用Docker Compose来简化该过程。以下是使用Docker Compose安装Nginx的步骤: 首先,确保已经安装DockerDocker Compose,并且已经正确配置和启动了Docker服务。 接下来,创建一个新的文件夹,用于存放Docker Compose配置文件以及Nginx相关的配置文件。 在该文件夹中创建一个名为docker-compose.yml的文件,并在其中定义Nginx服务。示例如下: ``` version: "3" services: nginx: image: nginx ports: - 80:80 volumes: - ./nginx.conf:/etc/nginx/nginx.conf volumes: - ./html:/usr/share/nginx/html ``` 在上述示例中,我们使用了官方的Nginx镜像,并将容器的80端口映射到主机的80端口。我们还将本地的nginx.conf文件挂载到容器内的Nginx配置文件路径,以便进行自定义配置。此外,还将本地的html文件夹挂载到容器内的Nginx的默认HTML文件路径,以便存放网页文件。 接下来,在上述文件夹中创建一个名为nginx.conf的文件,用于进行Nginx的自定义配置。根据实际需求进行配置。 最后,打开命令行终端,切换到该文件夹的路径,并执行以下命令来启动Nginx服务: ```bash docker-compose up -d ``` 该命令将会构建并启动定义在docker-compose.yml文件中的Nginx服务。参数“-d”表示后台运行服务。 安装完成后,您可以通过访问http://localhost来访问Nginx的默认欢迎页面。如果您在自定义配置文件中进行了一些更改,您需要重启Nginx服务以使更改生效。您可以使用以下命令来重启服务: ```bash docker-compose restart nginx ``` 希望这些步骤能帮助您成功安装和使用Docker Compose来管理Nginx容器。 ### 回答3: 要在docker-compose安装nginx,首先需要创建一个docker-compose.yml文件。 在docker-compose.yml文件中,我们需要定义一个服务来运行nginx容器。可以使用以下内容: ``` version: '3' services: nginx: image: nginx:latest ports: - 80:80 volumes: - ./nginx.conf:/etc/nginx/nginx.conf restart: always ``` 在这个配置文件中,我们指定了要使用的nginx镜像(这里使用最新版本)。然后,我们将主机的端口80映射到容器的端口80,以便可以通过Web浏览器访问容器中运行的nginx服务器。 另外,我们将nginx配置文件nginx.conf挂载到容器中的/etc/nginx/nginx.conf文件。这样,您可以自定义nginx配置,并使用该配置文件启动容器。 最后一行中的restart: always选项表示当容器异常关闭时,将自动重新启动容器。 只需将以上内容保存到docker-compose.yml文件中,并在包含该文件的目录中打开终端。运行以下命令来启动nginx容器: ``` docker-compose up -d ``` 这将在后台启动nginx容器,并将其作为docker-compose中定义的服务运行。 现在,您可以通过在Web浏览器中输入localhost或服务器的IP地址来访问运行在docker-compose中的nginx服务器。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值