Meine Docker-Datei:
FROM continuumio/miniconda:latest
MAINTAINER Kamil Kwiek <kamil.kwiek@continuum.io>
ADD backend.tar.gz /usr/src/
# app 所在目录
WORKDIR /usr/src/backend
# 安装miniconda,配置conda 环境
RUN apt-get install -y gcc g++
COPY backend_uwsgi.ini /usr/src/backend/
COPY environment.txt /usr/src/backend/environment.txt
RUN conda env create -f /usr/src/backend/environment.txt
start.sh Inhalt:
#!/bin/bash
#
docker exec -d mysql mysql -uroot -p123456 -e "create database blog;"
docker build -t feiyu/django-app .
docker run --name django \
-v /usr/src/backend \
-v /usr/src/backend/static \
--link mysql:mysql \
-p 12000:8000 \
-d feiyu/django-app uwsgi --ini /usr/src/backend/backend_uwsgi.ini /bin/bash
sleep 15
#-d feiyu/django-app /usr/local/bin/gunicorn backend.wsgi:application -w 1 -b :8000
Geben Sie sudo docker ps -a ein, um zu überprüfen, alle Ergebnisse sind
51e87164a739 feiyu/django-app "/usr/bin/tini -- ..." 5 minutes ago Exited (127) 8 seconds ago django
Es wird beendet, sobald es ausgeführt wird. Was ist los? was zu tun?
docker run 后面加 -d 参数
需要让 Docker 容器在后台以守护态(Daemonized)形式运行,可以通过添加 -d 参数来实现
注意这里
/bin/sh -c "while true; do echo hello world; sleep 1; done"