我正在寻找如何在Meteor Up Docker上安装Graphicsmagick。Meteor Up Docker和Graphicsmagick
我发现这个解决方案(Access binaries inside docker),但我无法工作,我在哪里把这些行在start.sh
?
meteorDockerId=docker ps | grep meteorhacks/meteord:base | awk '{print $1}'
docker exec $meteorDockerId apt-get install graphicsmagick -y
这是我start.sh
:
#!/bin/bash
APPNAME=instagatas
APP_PATH=/opt/$APPNAME
BUNDLE_PATH=$APP_PATH/current
ENV_FILE=$APP_PATH/config/env.list
PORT=80
USE_LOCAL_MONGO=0
# remove previous version of the app, if exists
docker rm -f $APPNAME
# remove frontend container if exists
docker rm -f $APPNAME-frontend
set -e
docker pull meteorhacks/meteord:base
if [ "$USE_LOCAL_MONGO" == "1" ]; then
docker run \
-d \
--restart=always \
--publish=$PORT:80 \
--volume=$BUNDLE_PATH:/bundle \
--env-file=$ENV_FILE \
--link=mongodb:mongodb \
--hostname="$HOSTNAME-$APPNAME" \
--env=MONGO_URL=mongodb://mongodb:27017/$APPNAME \
--name=$APPNAME \
meteorhacks/meteord:base
else
docker run \
-d \
--restart=always \
--publish=$PORT:80 \
--volume=$BUNDLE_PATH:/bundle \
--hostname="$HOSTNAME-$APPNAME" \
--env-file=$ENV_FILE \
--name=$APPNAME \
meteorhacks/meteord:base
fi
docker pull meteorhacks/mup-frontend-server:latest
docker run \
-d \
--restart=always \
--volume=/opt/$APPNAME/config/bundle.crt:/bundle.crt \
--volume=/opt/$APPNAME/config/private.key:/private.key \
--link=$APPNAME:backend \
--publish=443:443 \
--name=$APPNAME-frontend \
meteorhacks/mup-frontend-server /start.sh
我无法找到放置Docker文件的位置。我把'/ opt/instagatas/config'和'/ opt/instagatas'放在了一起,但是我看到这条消息'Can not locate Dockerfile:Dockerfile'。我在哪里放? –
我已经更新了我的回答,以解决您的注释放置Dockerfile的位置,我认为将内容传递给start.sh模板中的'docker build'命令可能会更好。 –
我尝试了第三个选项,如果我使用'mupx restart',它会起作用,但是当我做'mupx deploy'时'start.sh'会变回原来的,所以我需要再次更改文件并重新启动。 Theres通往这的方式不会发生? –