Django+Vue.js 의 개발 환경을 docker-compose 로 구축한다 (2)
5922 단어 nginxVue.js초보자장고docker-compose
이 기사는 지난 번부터 계속
마지막: Django + Vue.js의 개발 환경을 docker-compose로 구축 (1)
지난번에는 Vue 컨테이너를 시작하여 프로젝트를 만들었고 GitHub의 리포지토리 관리를 프런트 엔드(Vue)와 백엔드(Django)로 나누었습니다.
이번에 하고 싶은 일
이번에는 nginx 리버스 프록시를 설정하고 Vue 시작 화면을 보는 곳까지 갑니다.
이번에는 nginx 리버스 프록시를 설정하고 Vue 시작 화면을 보는 곳까지 갑니다.
docker-compose.dev.yml
의 전체 텍스트는 좀 더 이전 기사을 참조하십시오. 절차
docker-compose.dev.yml
편집 app_nginx.conf
편집 1. Vue 프로젝트 빌드
먼저 Vue 프로젝트를 빌드합니다. 아직 아무것도 만들지 않았지만.
$ docker-compose -f docker-compose.dev.yml run vue npm run build
올바르게 빌드되면 Vue 디렉토리에
dist
라는 디렉토리가 있습니다.2. docker-compose.dev.yml 편집
그런 다음 컨테이너의
/frontend
에 ./src/frontend
를 마운트하도록 docker-compose.dev.yml
의 nginx 섹션을 편집합니다.docker-compose.dev.yml(발췌)
nginx:
image: nginx:1.17
restart: unless-stopped
container_name: nginx
networks:
- django_net
ports:
- "80:80"
volumes:
- ./nginx/conf:/etc/nginx/conf.d
- ./nginx/uwsgi_params:/etc/nginx/uwsgi_params
- ./static:/static
- ./src/frontend:/frontend # 追加
depends_on:
- python
3. app_nginx.conf 편집
마지막으로 nginx를 다음과 같이 설정합니다.
./nginx/conf/app_nginx.conf
upstream django {
ip_hash;
server python:8001; # uWSGI で Django と nginx とが通信するためのポート
server vue:3000; # Vue と nginx とが通信するためのポート # 追加
}
server {
listen 80; # 待ち受けポート
server_name 127.0.0.1;
charset utf-8;
location /static {
alias /static;
}
client_max_body_size 75M;
location / { # 追加
root /frontend/dist; # 追加
} # 追加
location /apiv1/ { # 追加
uwsgi_pass django; # 追加
include /etc/nginx/uwsgi_params; # 追加
}
location /admin/ { # 追加
uwsgi_pass django; # 追加
include /etc/nginx/uwsgi_params; # 追加
} # 追加
} # 追加
server_tokens off;
즉,
-
/
에 대한 액세스는 /frontend/dist
로 라우팅-
/static
에 대한 액세스는 ./static
로 라우팅-
/apiv1
및 /admin
에 대한 액세스는 uwsgi를 통해 Django로 라우팅합니다.
덧붙여서, ngnix의 대기 포트가 80번으로 되어 있는 이유는 내가 Mac의 VirtualBox에서 Ubuntu Server를 실행하고 있고 호스트의 8081번과 게스트의 80번을 연결하고 있기 때문입니다. 그래서 Mac 브라우저에서 htp://127.0.0.1:8081/에 액세스하면 개발 중인 화면을 볼 수 있다는 이유.
관련: 이제 VirtualBox 설정으로 고민하지 않는다. 그래, Vagrant 그럼 😏
동작 확인
이상을 설정해, 컨테이너를 재기동해 톱 페이지에 액세스 하면, 무사히 Vue 의 스타트 화면을 볼 수 있었습니다.
Reference
이 문제에 관하여(Django+Vue.js 의 개발 환경을 docker-compose 로 구축한다 (2)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/hajime-f/items/1935068a0da802cddd10
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(Django+Vue.js 의 개발 환경을 docker-compose 로 구축한다 (2)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/hajime-f/items/1935068a0da802cddd10텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)