<ItemGroup> <None Include="app.yaml" CopyToOutputDirectory="PreserveNewest" /> </ItemGroup>
runtime: aspnetcore env: flex
dotnet publish -c Release
gcloud app deploy bin\<configuration>\netcore<version>\publish\app.yaml
runtime: custom env: flex
FROM gcr.io/google-appengine/aspnetcore:2.0 ADD ./ /app ENV ASPNETCORE_URLS=http://*:${PORT} WORKDIR /app ENTRYPOINT [ "dotnet", "MainProject.dll" ]
<ItemGroup> <None Include="app.yaml" CopyToOutputDirectory="PreserveNewest" /> <None Include="Dockerfile" CopyToOutputDirectory="PreserveNewest" /> </ItemGroup>
# First let’s build the app and publish it. FROM gcr.io/cloud-builders/csharp/dotnet AS builder COPY . /src WORKDIR /src RUN dotnet restore --packages /packages RUN dotnet publish -c Release -o /published # Now let's build the app's image. FROM gcr.io/google-appengine/aspnetcore:2.0 COPY --from=builder /published /app ENV ASPNETCORE_URLS=http://*:${PORT} WORKDIR /app ENTRYPOINT [ "dotnet", "multistage-2.0.dll" ]
gcloud app deploy app.yaml
kubectl run myservice --image=gcr.io/<your project id>/<app name> --port=8080
gcloud components install kubectl
gcloud container clusters get-credentials
kubectl expose deployment myservice --port=80 --target-port=8080 --type=LoadBalancer
deploy-to-kubernetes-staging: image: codefreshio/kubernetes-deployer:master tag: latest working-directory: ${{initial-clone}} commands: - /deploy/bin/deploy.sh ./root environment: - ENVIRONMENT=${{ENVIRONMENT}} - KUBERNETES_USER=${{KUBERNETES_USER}} - KUBERNETES_PASSWORD=${{KUBERNETES_PASSWORD}} - KUBERNETES_SERVER=${{KUBERNETES_SERVER}} - DOCKER_IMAGE_TAG=${{CF_REVISION}}
gcloud beta container clusters create CLUSTER --zone ZONE --enable-autoupgrade gcloud beta container node-pools create NODEPOOL --cluster CLUSTER --zone ZONE --enable-autoupgrade
gcloud beta container clusters create CLUSTER --zone ZONE --enable-autorepair gcloud beta container node-pools create NODEPOOL --cluster CLUSTER --zone ZONE --enable-autorepair
「Google Container Engine は、私たちが Docker コンテナの管理やオーケストレーションを行ううえで必要としているオープン性、安定性、スケーラビリティを提供してくれます。今年、私たちのお客様のところで、ブラック フライデー(米国における感謝祭翌日の金曜日。年末商戦の初日)とサイバー マンデー(感謝祭翌週の月曜日。ネット ショッピングが盛況)の間にサービスの停止やダウンタイム、中断はまったく発生しませんでした。Google Container Engine はそれに一役買っています」 - GroupBy の最高技術責任者(CTO)、Will Warren 氏
$ gcloud deployment-manager types list
$ gcloud deployment-manager deployments create net --configuration net-config.yaml
$ gcloud deployment-manager deployments delete net