>  기사  >  운영 및 유지보수  >  Docker 아래의 서비스에 SSL을 추가하는 방법

Docker 아래의 서비스에 SSL을 추가하는 방법

PHPz
PHPz원래의
2023-04-04 09:27:352552검색

Docker에서 서비스를 배포하는 것이 점점 더 대중화되고 있습니다. 또한 데이터 보안을 보호하기 위해 많은 서비스에서 SSL을 사용해야 합니다. 이 문서에서는 Docker에서 서비스에 SSL을 추가하는 방법을 소개합니다.

  1. 준비

먼저 다음을 포함하여 몇 가지 필요한 도구를 준비해야 합니다.

  • Docker: 서비스 배포에 사용
  • Docker Compose: Docker 컨테이너 배포 단순화
  • Certbot: SSL 인증서 발급에 사용

Docker와 Docker Compose가 설치되어 있는지 확인하세요. 그렇지 않은 경우 먼저 이 두 도구를 설치하세요.

  1. SSL 인증서 받기

Certbot을 사용하여 SSL 인증서를 받을 수 있습니다. Certbot은 대부분의 운영 체제와 웹 서버를 지원하는 무료 오픈 소스 SSL 인증서 발급 도구입니다.

먼저 다음 명령을 사용하여 Certbot을 설치해야 합니다.

sudo apt-get update
sudo apt-get install certbot

다음으로 다음 명령을 사용하여 SSL 인증서를 가져와야 합니다.

sudo certbot certonly --standalone -d example.com

여기서 example.com은 도메인 이름입니다. 이 명령을 실행하면 Certbot은 웹 서버를 시작하고 도메인 이름을 확인합니다. 확인이 성공하면 Certbot은 SSL 인증서를 발급하고 이를 /etc/letsencrypt/live/example.com 디렉터리에 저장합니다.

  1. SSL 인증서 사용

다음으로 SSL 인증서를 Docker 서비스에 적용해야 합니다. 여기서는 예제 서비스(Nginx)를 사용하겠습니다. 비슷한 방식으로 Docker 서비스에 SSL 인증서를 적용할 수 있습니다.

먼저 Docker Compose 파일에 다음 환경 변수를 추가해야 합니다.

services:
  nginx:
    image: nginx
    environment:
      - VIRTUAL_HOST=example.com
      - VIRTUAL_PORT=80
      - LETSENCRYPT_HOST=example.com
      - LETSENCRYPT_EMAIL=your_email@example.com

여기서 VIRTUAL_HOST 및 VIRTUAL_PORT는 서비스에서 사용할 호스트 이름과 포트를 정의합니다. LETSENCRYPT_HOST 및 LETSENCRYPT_EMAIL은 각각 당사의 도메인 이름과 이메일 주소입니다.

다음으로 Docker Compose 파일에 다음 볼륨을 추가해야 합니다.

services:
  nginx:
    image: nginx
    volumes:
      - /etc/letsencrypt:/etc/letsencrypt:ro
    ...

이를 통해 Docker 컨테이너 내에서 SSL 인증서를 사용할 수 있습니다.

마지막으로 Nginx 구성 파일에 다음을 추가해야 합니다.

server {
  listen 80;
  server_name example.com;
  return 301 https://$server_name$request_uri;
}

server {
  listen 443 ssl;

  server_name example.com;

  ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
  ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;

  location / {
    ...
  }
}

여기서 포트 80을 포트 443으로 리디렉션하고 SSL 인증서 경로를 구성합니다. 인증서 경로를 자신의 경로로 바꿔야 합니다.

  1. 서비스 실행

이제 Docker 서비스를 시작할 준비가 되었습니다. 명령줄에서 다음 명령을 실행하세요.

docker-compose up -d

그러면 Docker 서비스가 시작되고 SSL 인증서가 서비스에 자동으로 바인딩됩니다.

결론적으로, Docker 서비스에 SSL을 추가하는 것은 실제로 서비스를 더욱 안전하게 만들 수 있는 중요한 작업입니다. 이 문서에 설명된 단계를 따르면 서비스를 더욱 안전하게 만들 수 있습니다.

위 내용은 Docker 아래의 서비스에 SSL을 추가하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.