|
|
@@ -11,19 +11,33 @@ Python is an interpreted, interactive, object-oriented, open-source programming
|
|
|
## Create a `Dockerfile` in your Python app project
|
|
|
|
|
|
```dockerfile
|
|
|
-FROM python:3-onbuild
|
|
|
+FROM %%IMAGE%%:3
|
|
|
+
|
|
|
+WORKDIR /usr/src/app
|
|
|
+
|
|
|
+COPY requirements.txt ./
|
|
|
+RUN pip install --no-cache-dir -r requirements.txt
|
|
|
+
|
|
|
+COPY . .
|
|
|
+
|
|
|
CMD [ "python", "./your-daemon-or-script.py" ]
|
|
|
```
|
|
|
|
|
|
or (if you need to use Python 2):
|
|
|
|
|
|
```dockerfile
|
|
|
-FROM python:2-onbuild
|
|
|
+FROM %%IMAGE%%:2
|
|
|
+
|
|
|
+WORKDIR /usr/src/app
|
|
|
+
|
|
|
+COPY requirements.txt ./
|
|
|
+RUN pip install --no-cache-dir -r requirements.txt
|
|
|
+
|
|
|
+COPY . .
|
|
|
+
|
|
|
CMD [ "python", "./your-daemon-or-script.py" ]
|
|
|
```
|
|
|
|
|
|
-These images include multiple `ONBUILD` triggers, which should be all you need to bootstrap most applications. The build will `COPY` a `requirements.txt` file, `RUN pip install` on said file, and then copy the current directory into `/usr/src/app`.
|
|
|
-
|
|
|
You can then build and run the Docker image:
|
|
|
|
|
|
```console
|
|
|
@@ -36,11 +50,11 @@ $ docker run -it --rm --name my-running-app my-python-app
|
|
|
For many simple, single file projects, you may find it inconvenient to write a complete `Dockerfile`. In such cases, you can run a Python script by using the Python Docker image directly:
|
|
|
|
|
|
```console
|
|
|
-$ docker run -it --rm --name my-running-script -v "$PWD":/usr/src/myapp -w /usr/src/myapp python:3 python your-daemon-or-script.py
|
|
|
+$ docker run -it --rm --name my-running-script -v "$PWD":/usr/src/myapp -w /usr/src/myapp %%IMAGE%%:3 python your-daemon-or-script.py
|
|
|
```
|
|
|
|
|
|
or (again, if you need to use Python 2):
|
|
|
|
|
|
```console
|
|
|
-$ docker run -it --rm --name my-running-script -v "$PWD":/usr/src/myapp -w /usr/src/myapp python:2 python your-daemon-or-script.py
|
|
|
+$ docker run -it --rm --name my-running-script -v "$PWD":/usr/src/myapp -w /usr/src/myapp %%IMAGE%%:2 python your-daemon-or-script.py
|
|
|
```
|