ラベル GCE の投稿を表示しています。 すべての投稿を表示
ラベル GCE の投稿を表示しています。 すべての投稿を表示

2020/06/07

GCP: ローカルからGCLOUDコマンドを叩くと pyenv: python2: command not found エラー

  • Issue
    gcloud コマンドをローカルから使おうとしたら、pyenv: python2: command not found エラーとなる
  • 環境など
    Mac mojave 10.14.6
    pyenv 1.2.8-182  ※homebrew でインストールしていない。(これが原因かも)
  • 原因
    文字通りなのですが、gcloudの中で、"python2" コマンドが呼び出されるけど、python2 コマンドが見つからないと言われている。


  • Solution
    .zprofile に、export CLOUDSDK_PYTHON=/usr/bin/python を追記
    これを追記することで、呼び出すPython環境を明示できて、python2 を呼ばなくなる。
    (しらんけど。。。)


  • 編集後記
    これは、元々、エラーがでるけど普通に動く。多分、python2 コマンド使って、だめならpython コマンドって順番に呼び出しているのかと想像。
    前のMACだと出なかったんだけど。。。

2020/06/06

GCP: Google Compute Engine にVSCODD 越しに接続する

  • Goal
    • VSCODEから、GCEインスタンス(開発環境)に接続開発する
    • そのとき、一応SSHのポートも変更する
  • How
    1. gcloud SDK のインストール(詳細はカツアイ)
    2. GCE インスタンスを作成し、静的IPを割り当てる (詳細はカツアイ)
    3. ローカル端末で、Keyを作成する
      ssh-keygen -t rsa -b 4096 -C "testUser"
    4. GCEの設定画面で、Keyを貼り付け
    5. PORT:22での接続テスト
      gcloudコマンド (静的IPの割当が不要。インスタンス名で接続できる)
      gcloud compute ssh testUser@instance-1 --ssh-key-file ./test_rsa
    6. GCEのOS上でのsshdのポート変更
      5で接続した状態で、GCEの内部のsshd_configファイルの設定を変更する
      sudo vi /etc/ssh/sshd_config

      以下に、接続したいポート番号を追加
      #Port 22
      Port 22011
      #AddressFamily any


      そのあとに、サービスのRESTARTとSTATUSを確認
      sudo systemctl restart sshd
      sudo systemctl status sshd
      確認して問題なければ、一旦GCEから抜ける
    7. GCPのネットワークの設定でPORTの変更
      以下のケースでは、22から22011へ変更
    8. ローカルから、SSHでアクセステスト
      ssh testUser@34.67.184.203 -p 22011 -i ~/.ssh/test_rsa
    9. config の設定を加えるとVSCODEのからアクセスできる
  • 編集後記
    GCEインスタンスの開発なら、VSCODE+RemoteDevelopmentで開発して、Cloud Source Repositories へPushし、Cloud BuildでSTG環境と本番へデプロイが良いのでしょうか?
    でも、GAEなら、Cloud Shell で開発して、Cloud Source Repositories+Cloud Buildもできて、それならどこでも開発できるとも思ったりします。
    開発経験の少ない素人なので、良い方法が単純に知りたい・・・

2020/04/25

GCP: コンテナイメージから、GCEを立ち上げる方法 with Docker HUB -- GCP,GCE,docker


  • Goal
    • GCE(Google Compute Engine)に、コンテナイメージをDeployして立ち上げる。
    • Dockerのイメージは、DockerHUBから持ってくる。
  • How
    1. 準備:DockerHUBに、コンテナイメージを作成する。
      ①Github のrepositoryと、DockerHUBを連携させる
      ■連携の仕方
      https://docs.docker.com/docker-hub/builds/link-source/

      ドットインストールのPHP環境のテストをしたかったので、Docker fileなどを取得し、DockerHUBと連携させたGithubのrepositoryへpushする。すると、自動でDockerHUBにイメージが作成される!
      ■Githubのレポジトリ
      https://github.com/pumpkinpietea/dockerhub
      ■連携されたDockerhubのレポジトリ
      https://hub.docker.com/repository/docker/pumpkinpietea/github
    2. GCPのコンソールでGCEインスタンスをコンテナイメージを利用して立ち上げる。

      ■コンテナイメージ名に docker.io/アカウント名/レポ名 を入力する

    3. イメージを作成し、SSHでつないで見る。
      ~$ docker ps
      でコンテナIDを調べて
      ~$ docker exec -it コンテナ名 sh
      で、コンテナの中に入れる
  • Thanks!!
  • 編集後記
    • PHPの勉強をしようとして、ドットインストールさんの講座をみて進めようとしたが、Dockerをローカルmacには入れたくないと思い、GCPのf1-microインスタンスを使おうを思って取り組んだ。普通にインスタンス立ち上げて設定しようかとおもったが、少し調べてみたらコンテナイメージをDeployできるみたいなので試してみた。
    • GCE 1インスタンスで、 1コンテナとのこと。GKEの勉強しないと実業務には使えないかもしれないが、1インスタンスの開発環境の立ち上げとかには、。