2017-03-13 17 views
0

dockerコンテナ内のcentos内で実行されているApacheサーバーを起動しようとしています。私のDockerfile、サーバーを実行するためには、私は、コマンドを次のようしている。Tomcatサーバーをdocker centos内で起動中にエラーが発生しました

FROM centos:6 
#(few commands) 
CMD sleep 60 && sh /opt/liferay/liferay/tomcat-6.0.32/bin/startup.sh && tail -f /opt/liferay/liferay/tomcat-6.0.32/logs/catalina.out 

しかし、私は、Apacheのためstartup.shを実行するために、次のエラーを取得しています。ここで

: command not founday/liferay/tomcat-6.0.32/bin/startup.sh: line 2: 
: command not founday/liferay/tomcat-6.0.32/bin/startup.sh: line 17: 
: command not founday/liferay/tomcat-6.0.32/bin/startup.sh: line 23: 
'eb_1 | /opt/liferay/liferay/tomcat-6.0.32/bin/startup.sh: line 27: syntax error near unexpected token `in 
'eb_1 | /opt/liferay/liferay/tomcat-6.0.32/bin/startup.sh: line 27: `case "`uname`" in 

あなたは、エラー(行2、17、23、など...)持って行番号を見て、私のstartup.sh

#!/bin/sh 

# Licensed to the Apache Software Foundation (ASF) under one or more 
# contributor license agreements. See the NOTICE file distributed with 
# this work for additional information regarding copyright ownership. 
# The ASF licenses this file to You under the Apache License, Version 2.0 
# (the "License"); you may not use this file except in compliance with 
# the License. You may obtain a copy of the License at 
# 
#  http://www.apache.org/licenses/LICENSE-2.0 
# 
# Unless required by applicable law or agreed to in writing, software 
# distributed under the License is distributed on an "AS IS" BASIS, 
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 
# See the License for the specific language governing permissions and 
# limitations under the License. 

# ----------------------------------------------------------------------------- 
# Start Script for the CATALINA Server 
# 
# $Id: startup.sh 562770 2007-08-04 22:13:58Z markt $ 
# ----------------------------------------------------------------------------- 

# Better OS/400 detection: see Bugzilla 31132 
os400=false 
darwin=false 
case "`uname`" in 
CYGWIN*) cygwin=true;; 
OS400*) os400=true;; 
Darwin*) darwin=true;; 

答えて

1

の最初の30行です。 新しい行があるときにそれらはすべて起こるようです。

startup.shのファイル設定を確認するには、はCRLFではなくLFにする必要があります。私はLFでスクリプトをチェックしましたが、centOS 6で動作しています。

ドッカーコンテナを構築するためにウィンドウを使用している場合、詳細についてはRunning Scripts in a Docker Container from Windows- CR or CRLFを参照してください。

+1

はい。何らかの行末文字エラーでした。 dos2unixをすべてのシェルスクリプトで実行することで解決しました。ありがとう – Vrishank

関連する問題