docker nginx 여러 항목 배치

3306 단어 docker
전제 조건
  • 1. 로 컬 컴퓨터 와 서버 에 docker 가 설치 되 어 있 습 니 다. 다운로드 방법 은 자체 구 글 입 니 다
  • 2. docker hub 에 계 정 이 있 고 전송 문 을 등록 합 니 다.https://hub.docker.com/
  • 3. docker 에 대해 잘 알 고 Dockerfile 의 명령
  • 을 알 아야 합 니 다.
    Dockerfile 로 미 러 만 들 기
    만약 이 컴퓨터 에 웹 이라는 항목 이 있다 면
    웹 루트 디 렉 터 리 에 Dockerfile 을 새로 만 들 고 다음 내용 을 기록 합 니 다.
    FROM nginx:1.13.6-alpine
    LABEL maintainer="lilywang "
    
    ARG TZ="Asia/Shanghai"
    
    ENV TZ ${TZ}
    
    RUN apk upgrade --update \
        && apk add bash tzdata \
        && ln -sf /usr/share/zoneinfo/${TZ} /etc/localtime \
        && echo ${TZ} > /etc/timezone \
        && rm -rf /var/cache/apk/*
    
    COPY dist /usr/share/nginx/html 
    
    CMD ["nginx", "-g", "daemon off;"]
    

    이 때 웹 의 파일 구 조 는 다음 과 같 습 니 다.
    .
    |____Dockerfile
    |____dist //          
    | |____index.html

    다음은 bash 에서 웹 디 렉 터 리 로 들 어 갑 니 다.cd web docker build -t lilywang711/web . lilywang 711 을 docker hub 의 사용자 이름 으로 바 꾸 십시오. 웹 은 프로젝트 이름 입 니 다. 인쇄 정 보 를 보면 미 러 가 구축 되 었 음 을 설명 합 니 다.
    Successfully built 4c050212ce0d
    Successfully tagged lilywang711/web:latest
    docker images 을 입력 하여 현재 미 러 목록 을 볼 수 있 습 니 다.
    다음 명령 docker push lilywang711/web 을 입력 하면 방금 구 축 된 미 러 를 docker hub 에 업로드 할 수 있 습 니 다. 잠시 후에 서버 에서 미 러 를 끌 어 올 릴 수 있 습 니 다.
    배치 해 야 할 항목 이 여러 개 있다 면 위 절차 에 따라 반복 하면 되 고, 항목 이 있 는 만큼 미 러 를 구축 하면 된다.
    서버 배치
    ssh 로그 인 서버, 현재 사용자 디 렉 터 리 (루트 디 렉 터 리 입 니 다) 에서 nginx 폴 더 를 새로 만 들 고 nginx. conf 를 nginx. conf 에 다음 내용 을 기록 합 니 다.
    user nginx;
    worker_processes  2;
    error_log  /var/log/nginx/error.log warn;
    pid        /var/run/nginx.pid;
    events {
        use epoll;
        worker_connections  2048;
    }
    http {
        include  /etc/nginx/mime.types;
        # include /etc/nginx/conf.d/*.conf;
        root /usr/share/nginx/html;
        index  index.html index.htm;
        server {
            listen 80;
            server_name  a.yourdomain.cn;
            location / {
            }
        }
        server {
            listen 80;
            server_name  b.yourdomain.cn;
            location / {
                proxy_pass http://your_vps_ip:81;
            }
        }
        server {
            listen 80;
            server_name  localhost;
            location / {
            }
        }
    }

    다음
    docker 시작 systemctl start docker방금 만들어 서 올 린 두 개의 미 러 를 끌 어 올 립 니 다.docker pull lilywang711/web docker pull lilywang711/web1
    다음 명령 을 입력 하여 용기 시작
    docker run -itd --name web -p 80:80 -v /root/nginx/nginx.conf:/etc/nginx/nginx.conf lilywang711/web
    // -i         , -t           ,-d       ,      -itd
    // --name         web   ,    
    // -p           80:    80
    // -v   volume,        /etc/nginx/nginx.conf          /root/nginx/nginx.conf,    nginx     /root/nginx/nginx.conf   

    또 다른 lilywang 711 / web 1 미 러 도 마찬가지 로 포트 와 이름 을 수정 하면 됩 니 다.docker run -itd --name web1 -p 81:80 -v /root/nginx/nginx.conf:/etc/nginx/nginx.conf lilywang711/web1
    이때 입력 docker ps 하면 이 두 용기 가 이미 달 리 는 것 을 볼 수 있다.
    docker 화 프로젝트 와 nginx 배치 가 완료 되 었 습 니 다.
    브 라 우 저 입력http://a.yourdomain.cn 화해시키다http://b.yourdomain.cn 로 컬 컴퓨터 의 웹 과 웹 1 프로젝트 에 대응 하 는 효 과 를 볼 수 있 습 니 다.

    좋은 웹페이지 즐겨찾기