flagflag  If you want to see English page, please click "English" Button at Left.
3: 2020-08-26 (水) 10:01:28 iseki ソース 現: 2023-05-05 (金) 10:09:18 iseki ソース
Line 1: Line 1:
** Podman [#j2bbc8d3] ** Podman [#j2bbc8d3]
- RedHat社が開発したコンテナ管理ツール - RedHat社が開発したコンテナ管理ツール
-- Docker 互換らしい +- No Daemon, Root less 
-- しかし Compose は無い. +-- UNIXソケットを使って通信する場合は,デーモンがいる? 
--- Compose, Network の代わりに [[Kubernetes]] を使うらしい. +- [[Docker]] 互換らしい 
--- 3rdパーティ製の podman-compose があるらしい +-- しかし Compose は無い. 
---- https://github.com/containers/podman-compose +--- Compose, Network の代わりに [[Kubernetes]] を使うらしい. 
---- 泥沼にはまって行くような....+--- 3rdパーティ製の podman-compose があるらしい 
 +- 関連システム: [[skopeo>./Skopeo]], [[buildah>./Buildah]]
-*** 仕方無いから取り敢えず podman-compose [#db6acd76]+- see also [[PodmanSpawner]], [[LTIPodmanSpawner>/JupyterHub/LTIPodman​Spawner]] 
 +#br 
 + 
 +*** Install [#e1275c8f] 
 + # dnf module install container-tools -y 
 + # dnf install podman -y 
 + # dnf install podman-docker -y 
 + # dnf install podman-remote -y 
 + # dnf install podman-plugins -y 
 + 
 +**** CentOS7 に v3 をインストールする(通常は v1.6.4 : 2021 9/18) [#h57980fd] 
 +- CentOS7 は鬼門.バージョンが古すぎ. 
 + 
 +- /etc/yum.repo.d/podman.repo 
 +--https://download.opensuse.org/reposito​ries/devel:/kubic:/libcontainers:/stable​/CentOS_7/devel:kubic:libcontainers:stab​le.repo 
 + [devel_kubic_libcontainers_stable] ​
 + name=Stable Releases of Upstream github.com/containers packages (CentOS_7) 
 + type=rpm-md 
 + baseurl=https://download.opensuse.org/r​epositories/devel:/kubic:/libcontainers:​/stable/CentOS_7/ 
 + gpgcheck=1 
 + gpgkey=https://download.opensuse.org/re​positories/devel:/kubic:/libcontainers:/​stable/CentOS_7/repodata/repomd.xml.key ​
 + enabled=1 
 + 
 + # yum install podman -y 
 + # yum install podman-docker -y 
 + # yum install podman-remote -y 
 + # yum install podman-plugins -y 
 + # podman --version 
 + podman version 3.0.1 
 +#br 
 + 
 +*** API用設定 [#s175c767] 
 + 
 + adduser podman 
 + passwd podman 
 + chgrp podman /var/run/podman  (再起動したら元に戻ってしまう) 
 + chmod g+rwxs /var/run/podman (同上) 
 + systemctl start podman.socket 
 +- %%必要なら  podman.socket の [Socket] に  podman.socket を付け加える%% ??? 
 + 
 +- podman.socket 
 + [Unit] 
 + Description=Podman API Socket 
 + Documentation=man:podman-system-service​(1) 
 +  
 + [Socket] 
 + ExecStartPre=/usr/bin/chgrp podman /var/run/podman 
 + ExecStartPre=/usr/bin/chmod g+rwxs /var/run/podman 
 + ListenStream=%t/podman/podman.sock ​
 + SocketMode=0660 
 +  
 + [Install] 
 + WantedBy=sockets.target 
 + 
 + 
 +- CemtOS7 では動かない. 
 +-- 断続的に podman が再起動する 
 +#br 
 + 
 +*** [[Skopeo>./Skopeo]] [#aea7a285] 
 +#br 
 + 
 +*** [[Buildah>./Buildah]] [#cb7c2397] 
 +#br 
 +** Docker 互換 [#k05aa12a] 
 +- コマンド,Images は Docker 互換 
 +- でも色々とかなり違う! 
 +#br 
 + 
 +***  podman-compose [#db6acd76] 
 +- 3rdパーティ製の podman-compose 
 +- https://github.com/containers/podman-com​pose 
 +#br
**** INSTALL [#kd2bd466] **** INSTALL [#kd2bd466]
 (base) # pip --no-cache install podman-compose  (base) # pip --no-cache install podman-compose
-- やっぱり動かんのう.+- [[JupyterHub]] の sawrmspawner はやっぱり動かんのう.
- Network周りが違うよう. - Network周りが違うよう.
#br #br
 +
 +** API [#qe433dba]
 +- v2.0 から RESTful API をサポート,varlink は廃止へ.
 +
 + systemctl daemon-reload
 + systemctl enable podman.socket
 + systemctl start podman.socket
 +#br
 +
 +** 共有 [#i5d4cb87]
 +*** ファイル(Volume)共有 [#b06f7730]
 +- volume :  /var/lib/containers/storage/volumes
 +-- Docker :  /var/lib/docker/volumes
 +
 +- 特殊ファイル: /var/lib/containers/storage/volumes/back​ingFsBlockDev  特に処理する必要はない(と思う)
 +-- Docker: /var/lib/docker/volumes/metadata.db (PC毎に持つ必要がある)
 +#br
 +
 +** Tips [#ef3c521a]
 +
 +*** 知らない所で蠢くヤツら [#q8fa6054]
 +- 以下にファイルが作られる
 +-- ~/.local/share/containers/
 +-- ~/.config/containers/
 +- /run/user/{uid}/ を使用する
 +-- /run/user/{uid}/ ログインすると作られるが,su - では作られない!
 +-- /run/user/{uid}/ はリーブートすると消える,
 +#br
 +*** Local Registory [#m7fe6c75]
 +**** 作成 [#e5b11e92]
 + mkdir -p /var/lib/registry
 + podman run --privileged -d --name registry -p 5000:5000 -v /var/lib/registry:/var/lib/registry --restart=always registry:2
 + vi /etc/containers/registries.conf                registries に 'localhost:5000' を追加.最後が良い
 +**** Push [#g1aa40ba]
 + podman tag localhost/jupyterhub/singleuser-ltids localhost:5000/jupyterhub/singleuser-lti​ds
 + podman push localhost:5000/jupyterhub/singleuser-lti​ds --tls-verify=false
 +**** Pull [#i0ca7366]
 + podman pull localhost:5000/jupyterhub/singleuser-lti​ds --tls-verify=false
 +#br
 +
 +** Trouble Shooting [#t88c99fe]
 +**** あるユーザの環境で動かない [#i8332a5e]
 +- ~/.config, ~/.local を消す.
 +#br
 +
 +**** error adding seccomp filter rule for syscall bdflush: requested action matches default action of filter [#tff9d91e]
 +- runc が古い.
 +- crun が早いが CentOS7 では入れられない(コンパイル失敗)
 +-- https://github.com/opencontainers/runc
 + git clone https://github.com/opencontainers/runc.g​it
 + cd runc/
 + make
 + make install
 +- go で書かれているようだ.
 +#br
 +- /etc/containers/containers.conf を変更する必要があるかもしれない.
 +#br
 +
 +**** user namespaces are not enabled in /proc/sys/user/max_user_namespaces(CentOS7) [#qd5c0a60]
 +- sysctl user.max_user_namespaces=15000
 +-- cat /proc/sys/user/max_user_namespaces
 +-- これって一時的?
 +
 +- (?) usermod --add-subuids 200000-201000 --add-subgids 200000-201000 iseki
 +-- grep iseki /etc/subuid /etc/subgid
 +#br
 +
 +**** Error: Could not get runtime: kernel does not support overlay fs [#me91ced4]
 +- /etc/modules-load.d/overlay.conf
 +-- overlay と一行記述
 +- reboot
 +- lsmod |grep overlay
 +
 +- 何か色々と駄目だったけど,container パッケージを入れ直したら動いた
 +#br
 +
 +**** the backing xfs filesystem is formatted without d_type support [#e686d23d]
 +- CentOS の場合,ファイルシステムを -n ftype=1 オプション付きで再フォーマット(ftype=d_type)
 +#br
 +
 +**** Failed to allocate manager object: Permission denied [#a4b1a56f]
 +- see [[SELinux]]
 + # getsebool -a | grep container
 + # setsebool -P container_manage_cgroup on
 +
 +#br
 +
 +**** Docker を入れてから削除し,再び Podman を入れようとしたら駄目だった [#b144a12f]
 +- yum で poman のパッケージが見つからないとのエラー
 +-- /etc/dnf/dnf.conf で exclude=podman* runc* containernetworking-plugins* としていたのでそれをコメントアウト
 +- それでもダメ
 +-- /etc/dnf/modules.d/container-tools.modul​e を削除.なぜか上手く行く.
 +#br
 +
 +**** Error: could not get runtime: error creating tmpdir /run/user/1000/libpod/tmp: mkdir /run/user/1000: permission denied [#g52262c4]
 +- \rm -r ~/.conifg/containers/ ~/.local/share/containers/
 +- JupyterHub ではこれでも解決しない?
 +- su - ではなくて,ログインしてみる.
 +#br
 +** Devel [#de1c7526]
 +*** PodmanSpawner [#vc216da5]
 +- https://github.com/gatoniel/podmanspawne​r
 +
 + podman run -d --net host
 + -v /home/teacher/iseki:/home/iseki/
 + -v /mnt/datahdd:/extdata
 + -w /home/iseki/
 + --hooks-dir /usr/share/containers/oci/hooks.d/
 + -e NVIDIA_VISIBLE_DEVICES=all
 + docker.io/jupyterhub/singleuser
 + jupyterhub-singleuser
 + --NotebookApp.port=42868
 + --allow-root
 +
 + podman run -d --net host
 + -v /home/bob:/home/jovyan/home
 + -v /mnt/datahdd:/exdata
 + docker.io/jupyterhub/singleuser
 + start-notebook.sh
 + --NotebookApp.port=50377
 +#br
 +
 +*** コマンド例 [#r3871214]
 +
 + podman run -d --net host -v /home/teacher/iseki:/home/iseki/ -w /home/iseki/
 + --env JUPYTERHUB_API_TOKEN=cf30aa5ab007444ca64​62ff8c4decfec
 + --env JPY_API_TOKEN=cf30aa5ab007444ca6462ff8c4​decfec
 + --env JUPYTERHUB_CLIENT_ID=jupyterhub-user-ise​ki
 + --env JUPYTERHUB_HOST=
 + --env JUPYTERHUB_OAUTH_CALLBACK_URL=/user/isek​i/oauth_callback
 + --env JUPYTERHUB_USER=iseki
 + --env JUPYTERHUB_SERVER_NAME=
 + --env JUPYTERHUB_API_URL=http://202.26.150.118​:8081/hub/api
 + --env JUPYTERHUB_ACTIVITY_URL=http://202.26.15​0.118:8081/hub/api/users/iseki/activity
 + --env JUPYTERHUB_BASE_URL=/
 + --env JUPYTERHUB_SERVICE_PREFIX=/user/iseki/
 + --env GRANT_SUDO=no
 + --env CHOWN_HOME=yes
 + --env PRJCT_DIR=jupyter
 + --env WORK_DIR=works
 + --env COURSE_DIR=.courses
 + --env NB_UMASK=0037
 + --env CONDA_DIR=/opt/conda
 + --env TZ=JST-9
 + --env JUPYTER_ENABLE_LAB=yes
 + --env JUPYTER_IMAGE_SPEC=docker.io/jupyterhub/​singleuser
 + -v /mnt/datahdd:/extdata
 + --hooks-dir /usr/share/containers/oci/hooks.d/
 + -e NVIDIA_VISIBLE_DEVICES=all
 + docker.io/jupyterhub/singleuser jupyterhub-singleuser
 + --NotebookApp.port=42868
 + --allow-root
 + --ip=0.0.0.0
 +
 + podman run -d --net host -v /home/bob:/home/jovyan/home
 + --env JUPYTERHUB_API_TOKEN=7807b43805c442f4b38​b1a89855df831
 + --env JPY_API_TOKEN=7807b43805c442f4b38b1a8985​5df831
 + --env JUPYTERHUB_CLIENT_ID=jupyterhub-user-bob​
 + --env JUPYTERHUB_HOST=
 + --env JUPYTERHUB_OAUTH_CALLBACK_URL=/user/bob/​oauth_callback
 + --env JUPYTERHUB_USER=bob
 + --env JUPYTERHUB_SERVER_NAME=
 + --env JUPYTERHUB_API_URL=http://202.26.150.118​:8081/hub/api
 + --env JUPYTERHUB_ACTIVITY_URL=http://202.26.15​0.118:8081/hub/api/users/bob/activity
 + --env JUPYTERHUB_BASE_URL=/
 + --env JUPYTERHUB_SERVICE_PREFIX=/user/bob/
 + --env GRANT_SUDO=no
 + --env CHOWN_HOME=yes
 + --env PRJCT_DIR=jupyter
 + --env WORK_DIR=works
 + --env COURSE_DIR=.courses
 + --env NB_UMASK=0037
 + --env CONDA_DIR=/opt/conda
 + --env TZ=JST-9
 + --env JUPYTER_ENABLE_LAB=yes
 + --env JUPYTER_IMAGE_SPEC=docker.io/jupyterhub/​singleuser
 + -v /mnt/datahdd:/exdata docker.io/jupyterhub/singleuser
 + start-notebook.sh
 + --NotebookApp.port=50377


トップ   新規 ページ一覧 単語検索 最終更新   ヘルプ   最終更新のRSS 1.0 最終更新のRSS 2.0 最終更新のRSS Atom

サイト内 検索

ログイン

ユーザー名:

パスワード:


パスワード紛失
新規登録

サブ メニュー

ミニカレンダー

前月2024年 4月翌月
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
<今日>

オンライン状況

50 人のユーザが現在オンラインです。 (13 人のユーザが xpwiki を参照しています。)

登録ユーザ: 0
ゲスト: 50

もっと...

アクセスカウンタ

今日 : 8159815981598159
昨日 : 1889718897188971889718897
総計 : 2342175623421756234217562342175623421756234217562342175623421756
Powered by XOOPS Cube 2.1© 2001-2006 XOOPS Cube Project
Design by XoopsDesign.com