Cannot start docker daemon on systemd

우분투 버전을 올린 후에 Docker 서비스를 시작할 수 없는 문제가 있는데 해결 방법이 좀 기괴해서 나중에 삽질을 또 하지 않기 위해 블로그에 글로 남긴다.

sudo service docker startsudo systemctl start docker든 시작을 할 수 없다는 메시지가 나오고 로그를 살펴보면 -H fd:// 라는 옵션이 붙어 실행이 되는데 이 옵션이 붙으면 실행이 안 된다.
문제는 /etc/default/docker 파일을 봐도 DOCKER_OPTS는 그렇게 설정이 안 되어 있다는 거다.

결론부터 말하자면 /lib/systemd/system/docker.service 얘를 수정하면 된다. 쓸데없이 붙어있는 옵션을 지워 준 후 다음 명령을 실행하자

dokku-alt on systemd

동아리 내부에서 쓰려고 어디서 주워 온 컴퓨터에 우분투를 깔고 dokku-alt를 세팅 했으나 재부팅을 했을 때 컨테이너들이 안 뜨는 문제가 있었다.
원래 /etc/init/dokku-redeploy.conf에 모든 앱을 다시 디플로이 하는 스크립트가 들어 있는데 아무리 수정을 해도 실행이 안 되는 것 같아서 살펴보니 /etc/init 아래에 있는 애들은 upstart 전용 스크립트들이고 systemd에선 안 돌아간다. 그래서 oneshot 스크립트를 하나 만들어서 등록을 해 줬다.

대충 이렇게 만들고 나서 $ sudo systemctl enable dokku-redeploy.service 해 주면 재부팅을 한 뒤에 정상적으로 올라가게 된다.

Install gitlab on docker with systemd

1. Install docker

2. Pull gitlab community edition image

3. Configure systemd service