#目的
docker pushを拒否されたので、それを回避しようとしたことを振り返ります。
#結論
docker tagでイメージ名を変更したところ、docker pushできた。
docker pushしようとしてもdocker tagでイメージ名を変更しても同事象でした。
「docker ps -a」で確認すると、COMMAND欄が"python3"となっているものが複数ありました。
docker push できないのはこれが原因なのかもと思いました。
「docker ps -a」でCOMMAND欄に表示されるのはdockerコンテナのプロセス名ということがこちらを参考にさせて頂き、わかりました。
下記の記事を参考にプロセスをkillすればpython3から変えられるかもしれないと考えました。
プロセスを終了するkillコマンドの使い方まとめ!【Linux ...
【ps・kill】実行中のプロセス表示と強制終了 - Qiita
dokcerのshell接続するとpython3になっているのは「ps -a」とコマンドを打つとPID1であることがわかりました。
PID1に対して、pkill1としてもプロセスをkillできませんでした。
Docker で node.js を動かすときは PID 1 にしてはいけない ...
Docker/Kubernetes で PID 1 問題を回避する | text ...
上記の記事を参考にさせて頂き、PID 1 問題ということがわかり「docker run --rm -d --init」コマンドでpython3がPID 28とかPID 1 以外で起動させることができました。
「pkill 28(PID)」とかコマンドを打つと、python3のプロセスを終了させることができました。
ここで、「docker ps -a」のコマンドでCOMMAND欄を確認しましたが、"python3"の表記は消えませんでした。
【備忘録】docker pushしたら拒否された - Qiita
上記の記事を参考にさせて頂き、「docker commit」コマンドでansible-baseをインストールしたイメージを作成しました。
コンテナイメージをDockerHubにpushして共有する ...
上記の記事を参考にさせて頂き、「docker tag」コマンドで「ユーザ名/ansible-base」という名前のイメージを作成し「docker push」することができました。