2016-10-12 9 views
6

私のプロジェクトにCodeship CIを使用しています。 セレンテストがあり、selenium/standalone-firefoxからリモートブラウザを使用していますが、それはたくさんのログを生成していますので、selenium/standalone-firefoxコンテナのstdoutを無効にしたいと思います。コンテナの1つでDocker-compose disable出力

どうすればいいですか? docker run

+0

ドッカーの作成バージョンによっては、「log_driver:none」または「logging:\ driver:none」を使用できますか? https://docs.docker.com/compose/compose-file/#/logging – mgor

+0

log_driverを使用しても:none私は標準出力で同じ出力を得ます – Blejwi

+0

こんにちは、あなたは問題を解決しましたか? –

答えて

2

私はこのアプローチを使用:

JAVA_OPTS=-Dselenium.LOGGER.level=WARNING 

selenium/standalone-chrome用ドッキングウィンドウの画像におけるENV変数としてそれを追加しました。

11

使用--log-driver=none

docker run -d --log-driver=none selenium/standalone-firefox 

またはドッキングウィンドウ-compose.yml

version: '2' 
services: 
    selenium: 
    ports: 
     - "4444:4444" 
    logging: 
     driver: "none" 

    image: 
     selenium/standalone-firefox 

ます。また、使用してファイルにログを送信することができます。

docker run -d --log-driver=none -e SE_OPTS="log log.txt" selenium/standalone-firefox 

またはdocker- compose.yml

ドッキングウィンドウ-COMPOSEファイルのバージョン1の場合
version: '2' 
services: 
    selenium: 
    ports: 
     - "4444:4444" 
    logging: 
     driver: "none" 
    environment: 
     - SE_OPTS="log log.txt" 

    image: 
     selenium/standalone-firefox 

はあなたのドッキングウィンドウ-compose.yml横entry_point.sh

#!/bin/bash 

source /opt/bin/functions.sh 

export GEOMETRY="$SCREEN_WIDTH""x""$SCREEN_HEIGHT""x""$SCREEN_DEPTH" 

function shutdown { 
    kill -s SIGTERM $NODE_PID 
    wait $NODE_PID 
} 

if [ ! -z "$SE_OPTS" ]; then 
    echo "appending selenium options: ${SE_OPTS}" 
fi 

SERVERNUM=$(get_server_num) 
xvfb-run -n $SERVERNUM --server-args="-screen 0 $GEOMETRY -ac +extension RANDR" \ 
    java ${JAVA_OPTS} -jar /opt/selenium/selenium-server-standalone.jar \ 
    ${SE_OPTS} >/dev/null & 
NODE_PID=$! 

trap shutdown SIGTERM SIGINT 
wait $NODE_PID 

使用をentry_point.sh

入れ、このファイルを修正するより他に方法はありません。このdocker-compose.yml

selenium: 
    ports: 
    - "4444:4444" 

    volumes: 
    - .:/mnt 
    image: 
    selenium/standalone-firefox 
    command: bash /mnt/entry_point.sh >/dev/null 

よろしくお願いいたします。

+0

申し訳ありませんが、助けになりませんでした:( – Blejwi

+0

最新の 'docker-compose'バージョンを使用しているかどうかを確認し、' docker-compose 'もチェックしてください。yml'は 'version: '2''で始まります –

+0

私は使用できませんバージョン:' 2 'コードシップのため、すでにv1のlog_driverで試しました – Blejwi

2

CodeShipは、docker-compose v1のカスタムバリアントを使用して、環境設定を受け入れます。 codeship-services.ymlに次は私のために働いた:

selenium: 
    image: selenium/standalone-chrome 
    cached: true 
    container_name: selenium 
    environment: 
    - SE_OPTS=-log /tmp/log.txt 

SE_OPTS値は引用符であってはなりません。/tmpは書き込み可能ですが、他の場所では許可エラーが発生する可能性があります。

関連する問題