konchangakita

KPSを一番楽しんでいたブログ 会社の看板を背負いません 転載はご自由にどうぞ

【Nutanix ログほいほい】開発環境の整備(VScodeとDocker)

今回は、開発用のリモートサーバをセットアップして、ローカルPCからどうやって開発やってくかの基礎部分を整備していきます

インストール・設定するもの

ローカルPCの開発環境

リモートサーバの開発環境
  • OS:Ubuntu 22.04
  • ローカルの VScodeSSH
  • Docker (Podbmanなどでも可)


ローカルPCの設定

何は最近はこれさえいれときゃオッケー的な VScodeでいきます
【おてがる開発環境をつくろう】さいきょうのえでぃた VS Code - konchangakita

拡張機能はこのあたりをいれておくと良いでしょう
【おてがる開発環境をつくろう】VS Code あれもこれもエクステンション - konchangakita

今回は Remote Development を使っていきます

Postmanは一旦インストールのみくらいでOK


リモートサーバのセットアップ

OSはUbuntu 22.04でデフォルトのままインストール

open ssh インストール
$ sudo apt update
$ sudo apt install openssh-server

状況確認

$ sudo systemctl status ssh
● ssh.service - OpenBSD Secure Shell server
     Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)
     Active: active (running) since Sun 2023-08-06 20:10:49 JST; 1min 47s ago
~~~~~~~~~~~~~(以下略)


ローカル VScode での ssh接続設定

Remote Development の Remote SSH 機能を使って接続する設定します

ssh 接続するサーバ情報を入力

コンフィグファイルの設定内容

新しく出てきたサーバ名から新規ウィンドウで開く

新しいウィンドウが立ち上がりパスワード入力

これであとは、リモートサーバでテキスト操作が簡単になります

ついでに鍵認証

ローカルのPC上で鍵を作っておき、開発サーバ側に公開鍵を設置

~$ mkdir .ssh
~$ chmod 700 .ssh
~$ cd .ssh
~/.ssh$ touch authorized_keys
~/.ssh$ chmod 600 authorized_keys 

authorized_keys へ公開鍵の内容をコピペ

ローカルの VScode の Remote SSSコンフィグファイルに、秘密鍵の場所を追記(最後の行)

Host 172.16.0.6
    HostName loghoi
    User nutanix
    IdentityFile C:\Users\xxx\.ssh\id_rsa


Dockerのセットアップ

ここからは VScode のリモート接続したところから操作できます

Docker インストール

Ubuntuではこれだけでいけるっぽい

$ sudo apt install docker.io

このままでは毎回 sudoする必要があるので

sudo無しでの Docker操作

docker グループの状況確認

$ getent group docker
docker:x:136:

ユーザーを追加してリブート

$ sudo gpasswd -a nutanix docker
$ getent group docker
docker:x:136:nutanix
$ sudo reboot

sudoなしができるか確認

$ docker ps
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES


サンプルを起動
$ docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
719385e32844: Pull complete 
Digest: sha256:926fac19d22aa2d60f1a276b66a20eb765fbeea2db5dbdaafeb456ad8ce81598
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.
(以下略)


状態確認

$ docker images
REPOSITORY    TAG       IMAGE ID       CREATED        SIZE
hello-world   latest    9c7a54a9a43c   3 months ago   13.3kB
nutanix@loghoi:~$ docker ps -a
CONTAINER ID   IMAGE         COMMAND    CREATED         STATUS                     PORTS     NAMES
8ac88766360b   hello-world   "/hello"   2 minutes ago   Exited (0) 2 minutes ago             hungry_snyder


リモートサーバでもVScode拡張機能をインストールしておくと何かと便利

コンテナやイメージの削除もGUIからできる


なんか忘れてるような気もしてるけど、一旦はここまで
次回は、フロントエンドコンテナとバックエンドコンテナを作っていきます