問題タブ [docker-container]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
bash - Docker コンテナーの起動時に bash スクリプトを開始しても機能しない
ここ数時間、docker コンテナーの開始時にスクリプトを開始しようとしましstartup.sh
たが、何らかの理由で機能しません。
イメージを作成するための私の Dockerfile:
私の起動スクリプト:
スクリプト内でファイルを作成しようとしましたが、何も起こりませんでした。
コマンドラインからスクリプトを直接実行しようとしましたが、うまくいきません。理由はわかりません:
ドッカー実行コマンド:
そして、スクリプトを手動で実行しようとすると、次のようになります。
または、スクリプトの 2 行の間に空の行があると、次のエラーが発生します。
何が問題なのか、なぜそれが機能しないのかを誰かが説明できますか?
mysql - Dockerコンテナ内からホストPCで実行されているMySQLサーバーに接続するにはどうすればよいですか?
以下を使用して、mysql ソケットをコンテナーにマウントしました。
-v /var/run/mysqld/mysqld.sock:/tmp/mysql.sock
しかし、私はこのエラーが発生します:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysql.sock' (111)
docker - マウントされたフォルダーをホスト上のファイルに置き換えた後の Docker オーバーレイ フォルダーでのエラー
ホストからフォルダーがマウントされた Docker コンテナーがありました(noureldin.local.crt はフォルダーです)。
次に、そのフォルダーをホストから削除し、同じパスのフォルダーの代わりにまったく同じ名前のファイルを作成し(noureldin.local.crt はファイルになりました)、コンテナーを再起動しましたが、コンテナーを再起動できません。ドッカーがこれはフォルダーではないと通知するため、次のエラーで開始されました。
ここで、エラーに表示されるパスをオーバーレイフォルダーから削除しようとしましたが、新しく作成されたパスで常に同じエラーが発生します。(手動で何も削除すべきではなかったことはわかっています)。
その後、ファイルの代わりに同じ名前のフォルダーを復元しようとしました(最初の手順と同じです)。しかし、コンテナは起動せず、エラー126で終了します。
コンテナーを削除してから再作成しようとしましたが、常にそのエラーが発生します (ホストからマウントしているパスに関連するものです)。
誰かがその問題を解決するのを手伝ってくれませんか (パスを同じに保ちたい)。
docker - 「docker ps --format」の実行中にエラーが発生しました。エラー: フラグが提供されましたが、定義されていません: --format
次のコマンドを使用して docker をインストールしました。
テスト目的で、デタッチ モードで Ubuntu イメージを実行します。
しかし、docker psコマンドを次のように実行しようとすると
エラーが発生しました。エラーによると、フラグ--formatは定義されていません。以下はエラーメッセージです。
ヘルプページを確認したところ、これを見つけました
ヘルプ ページによると、フラグ --format が定義されていません。しかし、 https://docs.docker.com/engine/reference/commandline/ps/のリファレンスによると、 --formatフラグを指定してコマンドを実行できるはずです。
何が原因でしょうか?
補足情報
- OS: Ubuntu 14.04
- dockerバージョン : Docker バージョン 1.6.2、ビルド 7c8fca2
-ありがとうございました
docker - VM (VirtualBox) を tgz アーカイブにエクスポートする方法は?
docker import を使用してコンテナー内の VM を取得しようとしていますが、必要な形式は "image.tgz" です。VM イメージを VirtualBox から ".tgz" 形式にエクスポートすることはできますか?
docker - Docker コンテナーの名前空間の範囲を表示して、正しい Samba ドメイン メンバーの idmap 範囲を選択するにはどうすればよいですか?
DockerコンテナにSambaドメインメンバーのファイル共有サーバーを作成しましたが、実際には、sambaに使用した名前空間の範囲が最適かどうかはわかりません.いくつかの時点で、範囲に関するエラーが常に発生するため、機能するまで試行を続けました. !
よくわかりませんが、Samba が Docker コンテナー内で実行されているため、使用する名前空間の範囲が特定されていることが問題だと思います。
Docker コンテナに使用されている名前空間を表示する方法を教えてください。uid_map
これを試しましたが、ファイルが見つからなかったため機能しませんでした。
docker - コンテナーからホスト トンネルに接続する docker
ホストでトンネルを使用している postgres db を使用して、docker コンテナー内から接続したいと考えています。ホストには、DB ホストを指すトンネルがあります。
トンネルは次のようにセットアップされます。
ホストから psql コマンドを起動できます。
ネットワークモードBRIDGEを使用しているため[ dockerがコンテナーポートをホストに正しく公開していないため、 HOSTを使用できません。https ://github.com/docker/compose/issues/3442を参照してください]を使用する必要があることを読みましたコンテナ IP:
この場合は172.17.0.1になります
しかし、コンテナの中に入ると:
私が持っている接続を試みます:
私が欠けているものはありますか?
python - スクレイピングハブポーシャのドッカーでファイルを編集する方法
クロールされたアイテムを JSON ファイルに保存するパイプラインを作成し、パイプラインをパスに追加しました/slybot/slybot/mypipeline.py
その後、Docker を使用して Portia パッケージをインストールしました。インストールに成功。次に、インストール ドキュメント ページ
docker run -i -t --rm -v <PROJECT_FOLDER>/data:/app/slyd/data:rw -p 9001:9001 --name portia portia
に記載されているコマンドを使用して portia を開始しました。ブラウザで portia をロードできます。そして私はクモを作りました。スパイダーを実行しようとすると、パイプライン ファイルに誤りがありました。
今、そのファイルを編集して間違いを修正したいと思います。
コンテナーからローカル ホストにパイプラインをコピーしようとしましたが、docker copy pageを参照して、同じパイプラインをコンテナーに再度コピーして編集しました。
しかし、もう一度コマンド
docker run -i -t --rm -v <PROJECT_FOLDER>/data:/app/slyd/data:rw -p 9001:9001 --name portia portia
を実行してスパイダーを作成し、そのスパイダーを実行しようとしたとき。また、パイプライン ファイルが更新されていないようです。
portia run コマンドを実行するたびに、新しいコンテナーが作成されていることがわかりました。コンテナー内のそのパイプライン ファイルを編集してもうまくいかないのではないかと考えています。私は正しいですか?
docker で portia を再度ビルドせずに、docker でパイプライン ファイルだけを編集するにはどうすればよいですか?
docker - コンテナーを再起動した後でも、Docker コンテナー内の非ボリューム データが保持されるのはなぜですか?
Docker コンテナについて読んだところ、コンテナを再起動するとデータ (コンテナ内に保存されており、ボリューム データの一部ではない) が失われると話している人を見つけました。
次のような単純なUbuntuコンテナーを作成しようとしました: docker run -it ubuntu /bin/bash
、コンテナー内にいくつかのファイルを作成してから再起動しましたが、データはまだそこにあります。なぜそれが実際に起こるのですか?なぜ私のデータがまだそこにあるのですか? これは Docker の新しいバージョンで何か新しいことですか、それとも何か誤解がありますか?