1

앱 엔진 유연한 환경에서 실행되는 Google Cloud Platform VM에서 실행되는 레일 위의 루비 앱이 있습니다. gcloud --project project-name preview app deploy으로 앱을 배포하면 VM에있는 대부분의 소프트웨어가 설치되는 것처럼 보입니다. 레일 및 기타 소프트웨어가 만든 임시 dockerfile을 읽지 못하도록 설치한다고 생각합니다. app.yaml 파일에서 dockerfile에 대한 정보를 얻습니다 (이 튜토리얼을 따라 가면서이 설정을 얻었습니다).GCP 유연 환경에 새 소프트웨어를 설치하는 방법 VM

이것은 나에게 잘 돌아갔다.하지만 이제 ImageMagick을 서버에 설치하여 사이트의 이미지를 조작해야한다. 일반적으로 프로젝트 디렉터리에서 sudo apt-get install imagemagick을 실행하여이 작업을 수행합니다. VM에 SSH를 적용 할 때 프로젝트 디렉토리를 찾을 수 없으므로 작동하지 않습니다.

sudo apt-get install imagemagick을 사이트에 새로 배포 할 때마다 어떻게 실행시켜야 새 VM에 소프트웨어가 포함되어 있는지 알 수 없습니다.

당신이 말할 수 있듯이 서버 측에서 잘하지 못하고 VM에 올바른 소프트웨어를 설치하기 위해해야 ​​할 일을 알고 싶습니다. 레일 등은 새로운 배포를 할 때마다 있습니다.

+1

을,이'와 sudo 사용자 정의 Dockerfile을해야 apt-get install imagemagick' 명령어 –

+0

@IArArtamonov Ok. 그래서 2 개의 도커 파일이있을 것입니다. 하나는 배포본에 만들어졌고 하나는 만들어서'sudo apt-get install imagemagick'을 실행하는 것입니까? 나는 이것을 할 수있는 방법을 찾을 수 없으므로, 사용자 정의 dockerfile이 있다는 것을 알기 때문에이 사용자 정의 dockerfile이 어떻게 설치되어야하는지 또는 튜토리얼에 관한 몇 가지 문서를 링크 할 수 있습니까? – Rob

+1

@Rob ''custom'' (https://cloud.google.com/appengine/docs/flexible/custom-runtimes/quickstart) 런타임 (예 :'ruby' 대신에)을 빌드 할 필요가 있다고 생각합니다. 귀하의'app.yaml'에) 미리 정의 된 것들 중 하나를 기반으로, [here] (https://cloud.google.com/appengine/docs/flexible/custom-runtimes/build) – tx802

답변

2

추가 구성이 필요한 경우 사용자 지정 Dockerfile을 사용해야합니다.

당신이 Dockerfile 기본 하나를 기반으로 추가 다음과 같은 라인을 만들고, 당신의 app.yamlruntime: custom을 설정해야 ImageMagics 설치하려면 대신 기본의

RUN apt-get update && \ 
    apt-get install imagemagick -y 
+1

'및'을 제거하십시오. 빌드가 실패하게됩니다. 'gcloud beta app gen-config --custom'을 사용하여 기본'Dockerfile'을 생성 할 수 있다고 언급하신다면 좋을 것입니다. – diogovk

+0

감사합니다! 그것을 놓쳤다. –