| FROM ubuntu:kinetic | |
| # Doesn't usually have an "upgrade" | |
| RUN apt-get update \ | |
| && DEBIAN_FRONTEND=noninteractive \ | |
| apt-get install --no-install-recommends --assume-yes \ | |
| build-essential \ | |
| python3 \ | |
| python3-dev \ | |
| python3-pip | |
| # install the `aim` package on the latest version | |
| RUN pip install aim | |
| # make a directory where the Aim repo will be initialized, `/aim` | |
| RUN mkdir /aim | |
| RUN touch /.aim_profile | |
| RUN chown 1000:1000 /aim /.aim_profile | |
| RUN aim telemetry off | |
| ENTRYPOINT ["/bin/sh", "-c"] | |
| COPY aim_repo.tar.gz . | |
| RUN tar xvzf aim_repo.tar.gz | |
| # have to run `aim init` in the directory that stores aim data for | |
| # otherwise `aim up` will prompt for confirmation to create the directory itself. | |
| # We run aim listening on 0.0.0.0 to expose all ports. Also, we run | |
| # using `--dev` to print verbose logs. Port 43800 is the default port of | |
| # `aim up` but explicit is better than implicit. | |
| CMD ["aim up --host 0.0.0.0 --port 7860 --workers 2"] | |