LoginSignup
0
0

More than 3 years have passed since last update.

MacとLinuxでdocker を使う際に嵌ったこと

Posted at

landscapeの構築について

landscape :https://github.com/cncf/landscape というOSSを一覧で管理するソフトウェアをローカル環境に構築を行う際の出来事について記載する。
構築を社内のLinuxサーバでyarn コマンドでプロキシ を突破できない課題があった。
そのため、以下の2つの方針で行動を行った

  1. 各個人が所有しているプライベートPCを用いてdocker で環境を構築
  2. 社内Linuxサーバでyarnコマンドでプロキシを突破できるよに模索

私が所有しているPCはMacだっため、Mac上にdockerをインストールして、landscape の構築を行った。
その際、社内LinuxサーバとMacの環境を同じにしているにも関わらず、社内Linuxサーバで突破しているyarn によるサーバ起動コマンドでエラーを出力し、回避を行うことができなかった。

root@c6f9ee4050c2:~/graphql-landscape# yo ※サーバ起動コマンド
Internal Error: Assertion failed: Expected workspace to have been resolved
at se.refreshWorkspaceDependencies (/root/landscapeapp/.yarn/releases/yarn-berry.js:31:175850)
at se.restoreInstallState (/root/landscapeapp/.yarn/releases/yarn-berry.js:31:200252)
at processTicksAndRejections (internal/process/task_queues.js:93:5)
at async tt.execute (/root/landscapeapp/.yarn/releases/yarn-berry.js:71:88275)
at async tt.validateAndExecute (/root/landscapeapp/.yarn/releases/yarn-berry.js:25:318779)
at async e.run (/root/landscapeapp/.yarn/releases/yarn-berry.js:31:458286)
at async e.runExit (/root/landscapeapp/.yarn/releases/yarn-berry.js:31:458420)

構成は以下である

社内Linuxサーバ Mac
landscape landscape
Ubuntu Ubuntu
docker docker
Ubuntu(Host OS) Mac(Host OS)

docker のコンテナはホストOSに依存しない仮想化技術であるる認識であった。しかし、dockerのコンテナはホストOSとカーネルを共有するため、ホストOSに依存したソフトウェアである。そのため、前述のエラーが発生したと思われる。
ホストOSに依存しない仮想化技術を用いるなら、VMによる構築を行うべきであった(VM ware/VirtualBox 等)。
しかし、VMの場合でもアーキテクチャには依存する(CPU(Intel, AMD, 32bit/64bit), ハードウェアの構成)可能性があることから、留意すべきである。

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