보관함

Docker 로 Redis 띄우고 systemd 로 자동 시작하기

1. Docker 설치

2. Redis 컨테이너 실행

-d 같은 docker 옵션은 이미지 이름 앞에 와야 한다. 이미지 뒤에 쓰면 컨테이너 안의 명령 인자로 넘어간다.

  • --restart unless-stopped 만 있어도 Docker 서비스가 켜질 때 컨테이너가 같이 올라온다. 대부분은 이걸로 충분하다.
  • -p 127.0.0.1:6379:6379 처럼 로컬에만 열어 둔다. 6379 를 외부에 열어 두면 Redis 를 노리는 공격 대상이 된다. 외부에서 써야 하면 비밀번호(-e REDIS_ARGS="--requirepass <password>")와 방화벽을 같이 설정한다.

3. systemd 서비스로 관리하고 싶을 때

다른 서비스와 시작 순서를 맞춰야 할 때는 systemd 유닛으로 만든다. 이때는 위의 --restart 옵션을 빼고 컨테이너를 만든다.

docker start 에 -a 를 붙여야 컨테이너가 도는 동안 서비스도 살아 있는 것으로 보인다. 빼면 시작하자마자 끝난 것으로 처리된다. 서비스는 root 로 돌기 때문에 sudo 도 필요 없다.

Leave a Reply

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

  

  

  

이 사이트는 Akismet을 사용하여 스팸을 줄입니다. 댓글 데이터가 어떻게 처리되는지 알아보세요.