前提・実現したいこと
ローカル環境にてdockerを使いspringbootのwebアプリを起動させたい
nginxで→springbootへリクエストを流したい
・コンテナは2つ
nginx、springboot
・nginxの設定
80ポートでリッスン
リバースプロキシでlocalhost:8080指定
発生している問題・エラーメッセージ
localhost:80/loginでアクセスするとnginxの404エラーになってしまいます
期待値はlocalhost:80/loginにアクセスしたらnginxがhttp://localhost:8080/loginにアクセスしてくれることです
該当のソースコード
docker-compose.yml
version: '3' services: nginx: container_name: container_nginx build: nginx ports: - 80:80 #ポート80でアクセスすると、nginxのポート80にフォワード hostname: container_nginx_hostname app: container_name: container_springboot build: app expose: - 8080 hostname: container_springboot_hostname
Dockerfile(nginx)
FROM nginx:1.17.2 ADD nginx.conf /etc/nginx/conf.d/nginx.conf
nginx.conf
server { listen 80; listen [::]:80 default_server; charset utf-8; access_log off; expires 30d; root /usr/share/nginx/html; location / { proxy_pass http://localhost:8080; proxy_set_header Host $host:$server_port; proxy_set_header X-Forwarded-Host $server_name; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
Dockerfile(springboot)
FROM adoptopenjdk/openjdk11:alpine-slim COPY build/libs/test-1.0.0.jar /var/test-1.0.0.jar CMD ["java","-jar","/var/test-1.0.0.jar"]
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。