Skip to content
Snippets Groups Projects
Select Git revision
  • 1c700deb66270456ef0263b39754ed0b7b3e35de
  • main default
  • y3
  • y1
  • y2
5 results

Dockerfile

Blame
  • Dockerfile 1.14 KiB
    FROM hashicorp/terraform:1.1.4
    
    COPY requirements.txt /tmp/requirements.txt
    RUN apk add py3-pip cargo g++ python3-dev file libffi-dev openssl-dev bash python3 gnupg
    RUN pip3 install -r /tmp/requirements.txt
    # install docker stack
    RUN apk add docker docker-compose
    
    ENV API_KEY=changeme
    ENV IEM_HOME=/opt/iem/
    ENV DOCKERIZED=true
    
    COPY src/resources/ansible.cfg /etc/ansible/ansible.cfg
    
    # RUN adduser -h ${IEM_HOME} -S -D iem
    COPY certs/config ${IEM_HOME}.ssh/config
    COPY certs/id_rsa ${IEM_HOME}.ssh/id_rsa
    COPY certs/id_rsa.pub ${IEM_HOME}.ssh/id_rsa.pub
    RUN adduser -h ${IEM_HOME} -S -D iem && \
        chown -R iem ${IEM_HOME} && \
        chmod 0700 ${IEM_HOME}.ssh && \
        chmod 0644 ${IEM_HOME}.ssh/config && \
        chmod 0600 ${IEM_HOME}.ssh/id_rsa && \
        chmod 0644 ${IEM_HOME}.ssh/id_rsa.pub
    USER iem
    COPY roles.yml /tmp/roles.yml
    RUN ansible-galaxy install -r /tmp/roles.yml
    
    RUN mkdir -p ${IEM_HOME}db && \
        mkdir -p ${IEM_HOME}deployments
    
    COPY src ${IEM_HOME}src
    COPY main.py ${IEM_HOME}main.py
    COPY logging.ini ${IEM_HOME}logging.ini
    
    ENTRYPOINT ["/usr/bin/env"]
    WORKDIR ${IEM_HOME}
    CMD /usr/bin/uvicorn main:app --host 0.0.0.0 --log-level info
    EXPOSE 8000