0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

M1 Mac + Docker で 「ゼロからのOS自作入門」をやってみる ~Hello, World!編~

Posted at

環境情報

  • MacBook Air M1, 2020
  • Chip: Apple M1
  • macOS: Ventura 13.3.1 (a)
  • docker version: 27.1.1

事前準備

Docker Desktop のインストール

Docker Desktop は 250 人以上の企業では有料ですが、個人では無料で利用できます。

  1. https://www.docker.com/products/docker-desktop/ から Apple Silicon 版 Docker Desktop を選択し、Docker.dmg をダウンロード

  2. 指示に従いインストールする

    • "Use recommended settings (require password) を選択
      • 必要であれば後で設定は変更可能
        Config.jpg
    • 色々質問されるが"Skip"でOK 
      • 必要であれば後でアカウントを作る
        Welcome.jpg
  3. Docker コマンドが使えることを確認する
    docker versionを実行して、バージョン情報等が出力されればOK.

    $ docker version
    Client:
     Version:           27.1.1
     API version:       1.46
     Go version:        go1.21.12
     Git commit:        6312585
     Built:             Tue Jul 23 19:54:12 2024
     OS/Arch:           darwin/arm64
     Context:           desktop-linux
    
    Server: Docker Desktop 4.33.0 (160616)
     Engine:
      Version:          27.1.1
      API version:      1.46 (minimum version 1.24)
      Go version:       go1.21.12
      Git commit:       cc13f95
      Built:            Tue Jul 23 19:57:14 2024
      OS/Arch:          linux/arm64
      Experimental:     false
     containerd:
      Version:          1.7.19
      GitCommit:        2bf793ef6dc9a18e00cb12efb64355c2c9d5eb41
     runc:
      Version:          1.7.19
      GitCommit:        v1.1.13-0-g58aa920
     docker-init:
      Version:          0.19.0
      GitCommit:        de40ad0
    

XQuartz のインストール

https://www.xquartz.org/index.html から XQuartz をインストールする。
.pkgファイルをダウンロードして、指示通りに進めればOK.

XQuartz の Settings > Security の "Allow connections from network clients" にチェックを入れる。
image.png

okteta を起動する

いよいよ、oktetaを起動します。

Dockerfile の準備

Ubuntu の docker image は下記を参照しました。
https://hub.docker.com/_/ubuntu

  1. 任意の場所にディレクトリを用意し、そこに移動する

    mkdir mikanos
    cd mikanos
    
  2. 下記の内容でDockerfile を作成する

    FROM ubuntu:18.04
    
    # 環境変数の設定
    ENV DEBIAN_FRONTEND=noninteractive
    
    # 基本的なパッケージのインストール
    RUN apt-get update && apt-get install -y \
        software-properties-common \
        locales \
        && locale-gen en_US.UTF-8
    
    # KDEとoktetaのインストール
    RUN apt-get update && apt-get install -y \
        okteta \
        kde-plasma-desktop \
        dbus-x11 \
        --no-install-recommends
    
    # 不要なパッケージとキャッシュのクリーンアップ
    RUN apt-get clean && rm -rf /var/lib/apt/lists/*
    
    # エントリーポイントの設定
    CMD ["/usr/bin/okteta"]
    
  3. Docker container の起動

    $ docker build -t okteta .
    

    (5分くらいかかる)

    docker run -e DISPLAY=host.docker.internal:0 \
            -v /tmp/.X11-unix:/tmp/.X11-unix \
            --name okteta \
            okteta
    

起動できた!
image.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?