diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..4fe71f7 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,30 @@ +# ================================= UI ================================ +FROM exiasr/alpine-yarn-nginx AS cmdb-ui + +LABEL description="cmdb-ui" + +COPY ui /data/apps/cmdb-ui + +WORKDIR /data/apps/cmdb-ui + +RUN sed -i "s#http://127.0.0.1:5000##g" .env && yarn install && yarn build \ + && mkdir /etc/nginx/html && cp -r dist/* /etc/nginx/html && rm -f /etc/nginx/conf.d/default.conf + + +# ================================= API ================================ +FROM centos:7.6.1810 AS cmdb-api + +LABEL description="Python2.7.5,cmdb" + +COPY . /data/apps/cmdb + +WORKDIR /data/apps/cmdb + +RUN yum install -y epel-release && yum clean all \ + && yum install -y python-pip \ + && pip install --no-cache-dir -r docs/requirements.txt \ + && cp ./api/settings.py.example ./api/settings.py \ + && sed -i "s#{user}:{password}@127.0.0.1:3306/{db}#cmdb:123456@mysql:3306/cmdb#g" api/settings.py \ + && sed -i "s/127.0.0.1/redis/g" api/settings.py + +CMD ["bash", "-c", "flask run"] diff --git a/api/Dockerfile b/api/Dockerfile deleted file mode 100644 index 90513fa..0000000 --- a/api/Dockerfile +++ /dev/null @@ -1,20 +0,0 @@ -# build under cmdb directory other than api -# maybe use: cd .. -FROM centos:7.6.1810 AS cmdb-api - -LABEL description="Python2.7.5,cmdb" - -RUN mkdir -p /data/apps/cmdb /data/apps/cmdb/logs - -COPY . /data/apps/cmdb - -WORKDIR /data/apps/cmdb - -RUN yum install -y epel-release && yum clean all\ - && yum install -y python-pip \ - && pip install --no-cache-dir -r docs/requirements.txt \ - && cp ./api/settings.py.example ./api/settings.py \ - && sed -i "s#{user}:{password}@127.0.0.1:3306/{db}#cmdb:123456@mysql:3306/cmdb#g" api/settings.py \ - && sed -i "s/127.0.0.1/redis/g" api/settings.py - -CMD ["bash", "-c", "flask run"] diff --git a/docker-compose.yml b/docker-compose.yml index d3af339..4d640f5 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,4 +1,4 @@ -version: '3.4' +version: '3.5' services: cmdb-db: @@ -29,7 +29,7 @@ services: cmdb-api: build: context: . - dockerfile: api/Dockerfile + target: cmdb-api image: cmdb-api:0.1 container_name: cmdb-api environment: @@ -51,8 +51,8 @@ services: cmdb-ui: build: - context: ./ui - dockerfile: Dockerfile + context: . + target: cmdb-ui image: cmdb-ui:0.1 container_name: cmdb-ui depends_on: