2017-04-10 12 views
1

データベースが必要なCodeshipのコンテナをテストしています。 codeship-services.ymlのサービスを使用して、データベースコンテナをアプリケーションコンテナにリンクしています。問題は、データベースコンテナがテストの出力と混じった多くの出力を印刷していることです。 MongoDBのログを完全に削除したいのですが、MongoDBにはそのオプションがありません。コードシップサービスの出力を抑制する

私は現在 mongod --quiet --setParameter logLevel=0で実行していますが、まだ多くの出力が得られています。

私はコンテナ(コードシップ用語でのサービス)からの出力を抑制するコードシップ側のソリューションを探しています。 The

logging: 
    driver: none 

設定はドッキング作成していないようです。ここで

は私のcodeship-services.ymlです:

myapp: 
    build: 
    dockerfile: Dockerfile 
    image: myapp 
    cached: true 
    links: 
    - database 

database: 
    image: mongo:3.4.3 
    command: mongod --quiet --logpath /tmp/mongo.log --setParameter logLevel=0 
+1

'Logging'は現在Codeshipはまだサポートされていないディレクティブです。 –

答えて

0

あなたはMongoDBのログを完全に取り除くしたい場合は、\dev\nullmongodコマンドのすべての出力をリダイレクトすることができます。

mongod --quiet --logpath /tmp/mongo.log --setParameter logLevel=0 > /dev/null 2>&1

+1

残念ながら、これは 'jet steps'を使って実行すると失敗します。 '>/dev/null'を追加するとエラーが発生します。 子プロセスをフォークして、サーバの接続準備が整うまで待ちます。 {ContainerRunStdout = step_name: "テスト" service_name: "データベース"}:forkedプロセス:16 {ContainerRunStdout = step_name: "テスト" service_name: "データベース"}:エラー:子プロセスが失敗し、エラー番号1で終了しました –

関連する問題