見出し画像

Dockerがわからないので雑に試す 1

自分のための雑めもnote



環境

ガッツリ開発はしない、手元でちょっと触ってみる程度なのでこれで十分です、私的には。

MacBook Air
M1 2020

チップ Apple M1
メモリ 16GB
macOS sonoma

Docker version 27.0.3, build 7d4bcd8

やったこととかメモ

FirstDocker

1. Dockerのインストール
Docker公式サイトからインスコ

2. Dockerの基本コマンド
主要なコマンド:

  • docker --version:Dockerのバージョンを確認する。

  • docker run hello-world:簡単なコンテナを実行して、Dockerが正しく動作することを確認する。

  • docker ps:現在動作しているコンテナを表示する・

  • docker images:ローカルに保存されているコンテナイメージを表示する。

  • docker pull <イメージ名>:Docker Hubから指定したイメージをダウンロードする。

    コンテナイメージ?と、はてなが浮かぶがそのまま進む。

    3. 自分のアプリケーションをコンテナ化する

  • mkdir docker-app

  • cd docker-app

  • echo 'print("Hello, Docker!")' > app.py

    print("Hello, Docker!")

# ベースイメージを指定
FROM python:3.8-slim-buster

# 作業ディレクトリを指定
WORKDIR /app

# アプリケーションのファイルをコピー
COPY app.py .

# コンテナ起動時に実行するコマンド
CMD ["python", "app.py"]


Dockerイメージのビルドと実行
docker build -t my-python-app .
docker run my-python-app


上記のツイートや流れのように、Dockerインストールして、雑にターミナルからペチペチやって、ホーン?なるほど全然わからん、と思い、以下のインストールを改めて進めた。


各種インストール、環境構築

GitとVS Codeは元からあったがおさらい的にも再掲。

コマンド、シェル、ターミナル

CLI

「ターミナル」→コマンド入力→「シェル」→命令解釈→「Linux」
「ターミナル」←実行結果←「シェル」←実行←「Linux」

ターミナルは画面担当
シェルはLinuxとのやりとり担当 的な

基本コマンド

この辺は大体OKかな、復習としてさらっておく

ls
pwd    print working directory https://wa3.i-3-i.info/word11161.html
cd
mkdir
touch
echo 
cat
less
mv
rm

基本コマンドを使った一連の流れ 例

  1. ディレクトリの内容を確認する
    ls

  2. 現在のディレクトリのパスを表示する
    pwd

  3. 新しいディレクトリを作成し、その中に移動する
    mkdir my_new_directory
    cd my_new_directory

  4. 新しい空のファイルを作成する
    touch my_file.txt

  5. ファイルにメッセージを書き込む
    echo "This is a test file." > my_file.txt

  6. ファイルの内容を表示する
    cat my_file.txt

  7. ファイルの内容をスクロールしながら表示する
    less my_file.txt
    ※qで終了、元のコマンドラインに戻る

  8. ファイルの名前を変更する
    mv my_file.txt renamed_file.txt

  9. ファイルを削除する
    rm renamed_file.txt

  10. 作成したディレクトリに戻り、作成したディレクトリを削除する
    cd ..
    rm -r my_new_directory

-r オプション
-r は "recursive" の略で、ディレクトリを再帰的に削除するオプション

-rf オプション
-rf は -r に加えて -f("force" の略)を付けたもので、強制的に削除を行うオプション

-f オプションを付けることで、以下のような状況でも確認メッセージなしで削除を実行します。

  • ファイルやディレクトリが存在しない場合でもエラーメッセージを表示しない

  • 書き込み保護されたファイルやディレクトリでも確認メッセージなしで削除する

  • 例:
    rm -rf my_new_directory

    これは my_new_directory ディレクトリとその中のすべての内容を強制的に削除します。

Dockerの話,Dockerを使ってみる


docker run hello-world

でやっていく。続く?


参考


ClaudeやChatGPTで雑に聞いて雑にやるってのも出来てしまうんだよなあ。事前知識が乏しいものについては、ハルシネーションなのか、信憑性があるのかイマイチ判別がつかんな。
とりあえず試す、という場合にはまあいいのかなあ?うーん。




#Docker
#Python

いただいたサポートで、書籍代や勉強費用にしたり、美味しいもの食べたりします!