An open API service indexing awesome lists of open source software.

https://github.com/piotr-kalanski/service-initializer-base-docker

Base Docker image for Service Initializer tasks implemented using Docker
https://github.com/piotr-kalanski/service-initializer-base-docker

devops docker docker-image python

Last synced: about 1 month ago
JSON representation

Base Docker image for Service Initializer tasks implemented using Docker

Awesome Lists containing this project

README

          

# service-initializer-base-docker

Base Docker image for [Service Initializer](https://github.com/piotr-kalanski/service-initializer) tasks implemented using Docker.

# Run task using Docker image

docker run -it --rm service-initializer-base-docker --name service_name --description service_description --parameters "{'param1':'value1','param2':'value2'}" --service-metadata "{'param1':'value1','param2':'value2'}"

# Extending image

To create custom Docker image for new Task you need to provide:
- Dockerfile
- task.py with run_task method
- optionally install new python packages

## Dockerfile format for custom task

```
FROM piotrkalanski/service-initializer-base-docker

COPY task.py .

COPY requirements.txt ./
RUN pip install --no-cache-dir -r requirements.txt
```

## task.py

You have to implement business logic for you custom task in *run_task* function:

```python
def run_task(name: str, description: str, parameters: dict, service_metadata: dict):
# place your code here
```
Meaning of input parameters:
- name - service name
- description - service description
- parameters - task parameters
- service_metadata - service metadata parameters