1인 개발자를 위한 헤로쿠 대안 Dokku

3456 단어 dokkudockerheroku

Heroku 및 무료 요금제



2022년 8월 25일에 게시된 블로그 게시물에서 Heroku 총지배인은 2022년 11월 28일부터 무료 dynosdyno is heroku computing unit 제공을 중단할 것이라고 밝혔습니다. blog postRemove free products plan을 확인하십시오.

이 결정은 heroku를 사용하여 아이디어를 테스트하거나 초기 단계에서 프로젝트를 호스트하는 단독 개발자에게 영향을 미치며 heroku를 사용하는 것이 얼마나 쉬운지에 대해 이제 대안이 필요합니다.

독쿠



dokku은(는) 무엇입니까?

An open source PAAS alternative to Heroku.
Dokku helps you build and manage the lifecycle of applications from building to scaling.




Dokku는 선택한 단일 서버에서 실행되는 확장 가능한 오픈 소스 Platform as a Service입니다. Dokku는 Dockerfile을 통해 또는 Buildpacks로 언어를 자동 감지하여 git 푸시에서 즉시 앱 빌드를 지원한 다음 빌드된 이미지를 기반으로 컨테이너를 시작합니다. nginx 및 cron과 같은 기술을 사용하여 웹 프로세스는 자동으로 라우팅되며 백그라운드 프로세스 및 자동화된 cron 작업도 Dokku에서 관리합니다.

시작하기



dokku를 실행하기 위한 최소 요구 사항은 다음과 같습니다.


  • Ubuntu 18.04/20.04/22.04 또는 Debian 10+ x64를 새로 설치합니다.
  • 최소 1GB의 시스템 메모리.
  • 하나 이상의 도메인 이름을 서버 IP에 연결합니다(예: example.com ).

  • 설치


  • 먼저 원격 서버에 ssh합니다.
  • bootstrap.sh 설치 스크립트 다운로드

  •   wget https://raw.githubusercontent.com/dokku/dokku/v0.28.1/bootstrap.sh
    


  • DOKKU_TaG=xxx env 변수를 접두어로 지정하여 설치 프로그램 스크립트를 실행하여 원하는 버전을 지정하십시오. 최신 버전이 더 좋습니다.

  •  sudo DOKKU_TAG=v0.28.1 bash bootstrap.sh
    


  • 이 명령은 자동으로 apt를 사용하여 docker와 같은 종속 항목을 업데이트하고 설치한 다음 필요한 컨테이너를 생성하고 새 사용자dokku도 생성합니다
  • .
  • 다음 단계는 dokku 명령을 원격으로 실행할 수 있도록 공개 SSH 키를 추가하는 것입니다. 왜냐하면 dokku에는 heroku toolbel와 같이 로컬 시스템에 설치할 cli가 없기 때문입니다.

    키를 추가하려면 일반적으로 id_rsa.pub라고 하는 키 파일 이름인 로컬 시스템에서 콘텐츠를 가져옵니다.

    cat ~/.ssh/id_rsa.pub
    


    파일 내용을 복사한 다음 원격 서버에서 이 마지막 명령을 실행합니다.

    echo "your-public-key-contents-here" | dokku ssh-keys:add admin
    


    이 작업이 완료되면 다음과 같이 로컬 시스템에서 원격으로 명령dokku을 실행할 수 있습니다.

    ssh [email protected] apps:List
    ssh [email protected] domains:report --global
    


  • 이제 도메인을 독쿠 전역 도메인으로 설정해야 합니다.

  • ssh [email protected] domains:add-global example.com
    
    
    # check your setup
    ssh [email protected] domains:report --global
    
    =====> Global domains information
           Domains global enabled:        true
           Domains global vhosts:         example.com
    


    이렇게 하면 앱에 특정한 다른 도메인을 추가하지 않는 한 배포하는 모든 앱은 기본적으로 app-name.example.com에서 사용할 수 있습니다.

    이제 이와 같이 새로운 빈 앱을 만들 수 있습니다.

    # From remote server shell
    dokku apps:create my-first-application
    
    # From your local machine
    ssh dokku@<domain> apps:create my-second-app
    
    


    다음 기사에서는 NextJS 애플리케이션을 서버에 배포하는 방법을 보여 드리겠습니다.

    좋은 웹페이지 즐겨찾기