Podman-compose 시스템 자동시작 » History » Revision 2
Revision 1 (상혁 손, 2025-10-12 16:33) → Revision 2/3 (상혁 손, 2025-10-12 16:34)
# Podman-compose 서비스 등록 ssd@SSD-SERVER:/work/podman/postgresql-server$ cat ~/.config/systemd/user/my-server.service `[Unit]` `Description=Podman Compose service for PostgreSQL Project` `#Requires=network-online.target` `#After=network-online.target` `# Podman 소켓이 준비될 때까지 기다립니다.` `Wants=podman.socket` `After=podman.socket` `[Service]` `Type=oneshot` `RemainAfterExit=true` `# 프로젝트 폴더를 작업 디렉토리로 지정합니다.` `WorkingDirectory=/work/podman/postgresql-server` `# 서비스 시작 명령어 (백그라운드 실행)` `#필요하다면 # 필요하다면 리소스가 준비될때까지 sleep하도록 대기` 대기 `ExecStartPre=/bin/sleep 30` ExecStartPre=/bin/sleep 30 #/usr/bin/podman-compose가 있는지 /usr/local/bin/podman-compose가 있는지 정확히 지정 필요 `ExecStart=/usr/bin/podman-compose up -d` `# 서비스 중지 명령어` `ExecStop=/usr/bin/podman-compose down` `# 실패 시 10초 후 재시작` #gpu의 경우 언제 리소스가 활성화 될지 모르기 때문에 failure에 대비해서 30초로 설정 `#Restart=on-failure` `#RestartSec=10` `[Install]` `WantedBy=default.target` 위와 같은 형태로 서비스를 등록하면 됨 시스템 재시작시에 자동으로 시작하게 하는방법은 linger를 통해서 `sudo loginctl enable-linger $(whoami)` `loginctl show-user $(whoami) | grep Linger` Linger=yes 가 나오면 자동 재시작이 완성됨