都内在住/未経験SE/技術周りの話

技術の向上および備忘録として更新します🙃

Githubアカウントを使用して、マスターリポジトリにコミットしてみた

本日は、Gitを操作するコマンドを勉強しました。

すでにDockerを操作する時用のファイルを作成していたので、それらをマスターリポジトリとします。


①対象のファイルがあるディレクトリをカレントディレクトリとして移動し、

新しいGitリポジトリとして初期化する

git init

(新しいプロジェクトを開始する際に最初に実行されるコマンドで、ディレクトリ内に.gitという隠しディレクトリが作成されます)

 

②ファイルをaddします

git add hello.html

 

③ローカルリポジトリがリモートリポジトリと通信するための接続情報を設定

git remote add origin https://github.com/ユーザ名/リポジトリ名.git

 

④ローカルリポジトリに master ブランチを作成する

git checkout -b ブランチ名(例.master)

(-b オプションで、新しいブランチを作成します)
git commit -m "masterブランチを作成"

(-mオプションでコメントを残します)


⑤リモートリポジトリにpushする

git push origin master

(この時にGit hubのユーザ名とパスワードを聞かれます パスワードに関しては、パスワードの代わりにGithubのsettingで設定したPATを入力します)

 

これでGithubで作成したリポジトリにファイルが反映されていることを確認できました。


**コマンド**

・git branch

カレントディレクトリのブランチリストを表示する

 

・git branch -D ブランチ名

対象のブランチを削除する

 

・git status

ローカルリポジトリの状態を確認する

 

・git commit -am "コミットメッセージ"

「git add」と「git commit -m」を同時に行う

 

・git pull origin master

リモートリポジトリの変更を取得する

 

・git merge origin/master

マージして、リモートの変更とローカルの変更を統合する

 

おわり!

 

AWSアカウントを作成して、「Hello World!!!」を表示させてみた

こんにちは。

少しだけ期間が空きました。。

環境周りって難しい。

手順や調べながら環境構築はできるけど、理解しないまま進めると人に説明できないね。。。

 


今回は、AWSアカウントを作成して、AWSのサービスであるEC2(仮想サーバー)のIPアドレスに接続してブラウザ上に「Hello World!」を表示しました。


手順としては、YouTubeの動画「【AWS 入門】EC2とDockerでHello Worldしよう (youtube.com)」を見ながら、進めました。

動画と違うところは、サーバーに「Amazon linux」ではなく、「ubuntu22.04」を使用したことくらいかな。

 

動画での進め方としては、以下。

1.VPCとサブネットを作る
2.インターネットGWをくっつける
3.サーバー(EC2)を立てる
4.ファイアウォール(セキュリティグループ)とルーティングを設定
 4-1.ファイアウォール(セキュリティグループ)を許可
 4-2.ルーティングの設定
5.SSHでサーバーにアクセスする
6.Dockerのインストール&「Hello From Docker!!」

 

まず、「1.VPCとサブネットを作る」。

VPC(Virtual Private Cloud)サービスはプライベート仮想ネットワーク空間で、このネットワーク内にEC2をたてることができる。サブネットはVPC内のIPアドレス範囲で分割したもの。

AWSVPCサービスから「VPCを作成」。IPv4 CIDR ブロックで「192.168.1.0/24」を設定(IPアドレスの範囲は「192.168.1.0」から「192.168.1.255」)。IPv6 CIDR ブロックはなし。保存。

続けて、「サブネットを作成」。VPCは上記で作成したものを指定することで、指定したVPC内にサブネットを作成することができる。VPC CIDR で「192.168.1.0/24」が設定されているため、IPv4 CIDR ブロックで「192.168.1.0/25」を設定(IPアドレスの範囲は「192.168.1.0」から「192.168.1.127」)。保存。

 

次に「2.インターネットGWをくっつける」。

何もしないとVPCはインターネットを通してアクセスすることはできない。そのため、インターネットGW(ゲートウェイ)をVPCにくっつけることでインターネットからのアクセスが可能になるらしい。。。

AWSVPCサービスから「インターネットゲートウェイを作成」。作成したインターネットゲートウェイを「VPCにアタッチ」で上記で作成したVPCを選択。保存。

 

次に「3.サーバー(EC2)を立てる」。

AWSのEC2サービスから「インスタンスの起動」。

アプリケーションおよび OS イメージ (Amazon マシンイメージ) に「Ubuntu22.04」を選択。

インスタンスタイプ(サーバーのスペックみたいなものらしい)は「t2.micro」を選択。

ネットワーク設定の「VPC」と「サブネット」は上記で作成したものを指定。

「パブリック IP の自動割り当て」は「有効化」を選択。パブリック IPアドレスAWS外部からのアクセス許可。

キーペア (ログイン)を作成して、キーペア名に任意の値を設定。*.pemファイルをダウンロードする。キーペア(sshの公開キーと秘密キー)は、EC2インスタンスに接続する時に必要となる。


次に「4.ファイアウォール(セキュリティグループ)とルーティングを設定」。

サブネット単位でセキュリティグループを適用することで、サーバー(EC2)にアクセスが可能になる。「http」からのアクセスを許可するには80番ポートを許可する設定をする。

ネットワーク設定の「セキュリティグループを作成」で、タイプsshでポート範囲に22を設定。カスタムTCPでポート範囲に80を設定。

22と80からのアクセスが許可される。

 

VPCサービスの「ルートテーブルを作成」。VPCは上記で作成したものを指定。

ルートタブからインターネットで通信を行うために「ルートの追加」をする。

送信先で「0.0.0.0/0」を設定。

ターゲットで上記手順で作成したインターネットGWを指定。

サブネットの関連付けタブから上記手順で作成したサブネットを指定。


次に「5.SSHでサーバーにアクセスする」。

22番ポートを許可する設定は上記で対応済み。

以下をターミナルから確認。

 

キーペアがダウンロードされていることを確認

 ll ~/Downloads/hello-docker-key.pem

chmod 600でパーミッションを変更
 chmod 600 ~/Downloads/hello-docker-key.pem

鍵を使ってEC2にアクセスできるか確認(EC2でssh接続する際のユーザー名はubuntu

 ssh -i  ~/Downloads/hello-docker-key.pem ubuntu@IPアドレス

 

次に、「6.Dockerのインストール&「Hello From Docker!!」」。

EC2にDockerをインストールすることでコンテナを作成する。

Docker を Ubuntu システムにインストール

 sudo apt update
 sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
 sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

 sudo apt update
 sudo apt install -y docker-ce docker-ce-cli containerd.io

Dockerを起動
 sudo service docker start
起動情報の確認
 sudo docker info

作業用ディレクトリを作成
 mkdir hello-docker
 cd hello-docker/
以下のファイルを作成
 vi hello.html
 vi Dockerfile

Dockerfileの中身に以下を設定

※Dokerのnginxでは、ブラウザから初期表示した時にデフォルトで「/usr/share/nginx/html/」にアクセスされる

  FROM nginx
  COPY ./hello.html /usr/share/nginx/html  

Dokerfileを元にイメージを作成
 sudo docker build -t hello-docker-ec2 .

指定した「hello-docker-ec2」イメージを元にdockerコンテナを起動
 sudo docker run --rm -d -p 80:80 hello-docker-ec2 .

コンテナが起動していることを確認
 sudo docker ps

 

手順はうまくいったのに、ブラウザから接続しても上手く表示されなかった理由として、「http」ではなく「https」に接続していた(-_-;)

一応、ブラウザ上に「Hello World!!!」が表示されること確認。

長々となりましたが、今回はこれで終わり!!

Linuxコマンド調べてみた

 

 

お久しぶりです!

初投稿が1月だったのですが、もう4月ですね。

個人的に外の景色を見る余裕がなく、

桜をまだ見ていないのですが、まだ咲いているのかな??🌸

 

話は変わって、Dockerを勉強したいと思い、

手を動かしてみました。

私の環境はWindows OSのため、Linuxの環境が必要です。

そのため、WSL2(仮想環境)上にUbunts(Linuxディストリビューション)を

インストールして使えるようにしました。

エディタはVS CodeWindows Terminalをインストールし、

複数のコマンド(言い方合ってる?)を実施できるようにしました。

 

コマンドプロンプトから簡単なコマンドは実施したことはあるものの、

Linuxコマンドについてはさっぱりのため、

今更ですがLinuxUnix)コマンドについて検索してみました。

補足として、LinuxUnixは一応別物ではあるらしい。。うーん。

 

以下、個人的に分かりやすいと思ったチート集になります。

UNIXコマンドリファレンス (chiba-u.jp)

unix.pdf (kanemotilevel.com)

 

とりあえず、今日覚えたコマンドはコレ。

・ls
 ディレクトリの中身
pwd
 現在のディレクトリパス
・mkdir
 フォルダの作成
・touch
 ファイルの作成
・echo 'aaa' >
 'aaa'を書き込む 
・cat
 ファイルの中身を参照
・less
 ファイルの中身を参照(全画面)
・mv a b
 ファイル名をaからbに変更
・rm
 ファイルを削除

では、また更新します!

 

はじめまして

 

新年あけましておめでとうございます🎍

 

年明けから石川県の地震羽田空港での機体炎上など災難が続いていますね

 

現在も倒壊家屋から人命の救助活動中だとか‥

どうか一刻も早い救命および復旧をお祈りします🙇‍♀️

 

遅くなりましたが、こちらのブログでは技術周辺を備忘録として更新する予定です

 

これから、どうぞよろしくお願いいたします