こんにちは。私は FedoraCoreOs を初めて使用します。しかし、非常に単純な概念の調査を試しています。起動時に .tar docker イメージを fedora core os ローカル レジストリにロードしようとしています。systemd とロードを実行するサービスを使用していますが、何かが足りないようです。サービスは実行されているのに、podman images と入力するとイメージがリストされます。
これは私のユニット構成です
cat etc/systemd/system/test.service
[Unit]
Description=My custom service
[Service]
Environment=PODMAN_SYSTEMD_UNIT=%n
Restart=on-failure
Type=oneshot
StandardInput=null
StandardOutput=journal
StandardError=journal+console
RemainAfterExit=yes
ExecStart=/etc/rc.d/init.d/startServiceTest.sh
呼び出されるスクリプトは
cat /etc/rc.d/init.d/startServiceTest.sh
#!/usr/bin/env bash
podman load -i /etc/files/docker.tar
イメージが起動したら、サービスのステータスを確認し、正常に実行されていることを確認します。 サービスステータス出力
しかしその後、podmanイメージをチェックするとdockerイメージはリストされません。注: コマンドを手動で実行すると動作します
何か案は??
答え1
podman はルートレスなので、ユニット構成の [Service] セクションに次の行を追加しました。
User=<my target fcos machine user>
Group=<my target fcos machines group>