🐧

Dockerでlinuxの勉強のための環境を構築する方法

2025/01/15に公開

はじめに

linuxのペンギンが可愛いので、linuxの勉強を始めたみなさんこんにちは。
この記事ではlinuxの勉強のための環境をDockerを用いて構築する方法を紹介します。

対象読者

  • linuxの勉強をしたい方
  • Dockerを使ってみたい方
  • linuxのペンギンが好きな方

結論

docker-compose.yaml
version: '3.8'

services:
  rocky-linux:
    image: rockylinux:9
    container_name: rocky-linux-container
    ports:
      - "8080:80"
    volumes:
      - ./data:/data
    tty: true
  1. 上記のdocker-compose.yamlを作成する。
  2. 上記のファイルが存在するパス上で以下のコマンドを実行
    docker-compose up -d
    
  3. 以下のコマンドでコンテナに入る。
    docker exec -it rocky-linux-container bash
    
    またはDockerDesktop > Containers > rocky-linux-container > Exec
    でコンテナに入る。
  4. 試しに以下のようなlinuxコマンドを入力する。
    sh-5.1# ls
    
    以下のような出力があれば成功!
    sh-5.1# ls
    afs  aru  bin  data  dev  etc  home  lib  lib64  lost+found  media  mnt  opt
    proc  root  run  saki  sbin  srv  sys  test  tmp  usr  var  work
    

docker-compose.yamlの解説

yamlファイルの解説を自分用に残しておく。

  1. version: '3.8'
    Docker Compose のバージョンを指定している。基本的に3.x。
    2025/01/20追記
    現在のバージョン、というかかなり昔からこの表記は必要なくなった。
  2. image: rockylinux:9
    Rocky Linux 9 の公式イメージを利用する。
  3. ports: "8080:80"
    Docker コンテナ内のポートをホストマシンのポートにマッピングするためのもの。
    この設定により、コンテナ内のアプリケーションにホストマシンからアクセス
    できるようになる。
    Webサーバーとして使用する場合は必要であるが、今回の場合はホストとコンテナの間
    でやり取りをすることはないので、必要ない。
  4. volumes: ./data:/data
    DockerComposeファイルでボリュームを設定する際の記述。この設定は、ホストマシン(ローカルコ
    ンピュータ)上のディレクトリと、コンテナ内のディレクトリをリンク(マウント)する機能を提供
    する。
  5. tty: true
    様々なコマンドを入力できる。無くても良いが、あったら便利。

Discussion