Manage Docker as a non-root user (Optional but recommended)
•
서론)
◦
기본적으로 Docker 명령어를 실행하기 위해서는 sudo를 사용해야 한다.
◦
접속한 사용자를 docker 그룹에 추가하여 sudo 없이도 Docker 명령어를 실행할 수 있도록 해보자.
•
본론)
◦
sudo usermod -aG docker $USER 입력
1. By default, the Docker command requires root privileges. If you want to use Docker as a non-root user (which is recommended for security reasons), you can add your user to the "docker" group:
2. sudo usermod -aG docker $USER
3. Remember to log out and log back in or restart your EC2 instance for the group changes to take effect
◦
터미널 재시작 후 id -nG 입력해 결과 확인(끝에 도커가 있는지 확인
Docker로 Nginx 웹서버 구동 + SSL 인증서 적용 (with 서브도메인)
•
서론) 도커 Nginx 컨테이너를 이용해서 https 배포를 해보자!
◦
그동안은 AWS 로드밸런서를 이용해 https 배포를 진행해왔는데 비용 감소를 위해 자체적으로 Nginx를 서버 앞단에 띄어 로드밸런서로 사용해보자.
•
본론) 과정 정리하겠다.
◦
서브 도메인 만들기
▪
가비아 > 마이페이지 > dns 관리 툴 > 도메인 선택 > dns 설정 > 레코드 추가
•
도메인이 main.com이라 쳤을 때 서브도메인 이름이 call-api.main.com 이라면 앞 부분 call-api만 호스트에 적어줍니다.
◦
ssl 인증서 발급받기
▪
secure sign > dashboard > 인증서 관리 > 전체zip 다운로드
▪
zip 파일에서 key.pem과 unified.crt.pem만 따로 로컬 원하는 경로에 저장
◦
서버로 ssl 인증서 전송하기 (사실 해당 파일 내용들 복사해서 vim으로 직접 넣어주셔도 무방합니다)
ubuntu@ip-172-31-35-215:~$ cd ..
ubuntu@ip-172-31-35-215:/home$ cd .. (최상위 루트로 이동)
ubuntu@ip-172-31-35-215:/$ sudo chmod 777 etc (권한 열어주기)
ubuntu@ip-172-31-35-215:/$ ls -al (권한 열어졌는지 확인하기)
ubuntu@ip-172-31-35-215:/$ sudo mkdir /etc/nginx/ssl
ubuntu@ip-172-31-35-215:/$ cd /etc/nginx/ssl
Java
복사
▪
로컬에서 scp 명령어로 절대경로로 해서 서버에 파일 업로드
•
명령어예시
scp -i fisolution_server.pem /Users/yeongeun/Downloads/iluvit.key.pem ubuntu@3.38.19.119:/etc/nginx/ssl/
scp -i fisolution_server.pem /Users/yeongeun/Downloads/iluvit_unified.crt.pem ubuntu@3.38.19.119:/etc/nginx/ssl/
◦
ssl 인증서 적용을 위한 nginx conf 파일 생성
ubuntu@ip-172-31-35-215:/$ cd /etc/nginx/conf
ubuntu@ip-172-31-35-215:/$ sudo vim nginx.conf
Java
복사
◦
docker-compose.yml 변경
◦
docker-compose 다운로드
▪
처음 깐다면
▪
이미 깔려있다면 버전 변경 필요
cd /usr/local/bin/
sudo rm docker-compose
cd /usr/bin/
sudo rm docker-compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
docker-compose -v
Java
복사