Initial commit
This commit is contained in:
commit
6c0fbe6efc
16
.drone.yml
Normal file
16
.drone.yml
Normal file
@ -0,0 +1,16 @@
|
||||
---
|
||||
kind: pipeline
|
||||
type: kubernetes
|
||||
name: default
|
||||
|
||||
steps:
|
||||
- name: docker
|
||||
image: plugins/docker
|
||||
settings:
|
||||
repo: harbor.k-space.ee/${DRONE_REPO}
|
||||
registry: harbor.k-space.ee
|
||||
mtu: 1300
|
||||
username:
|
||||
from_secret: docker_username
|
||||
password:
|
||||
from_secret: docker_password
|
6
.flake8
Normal file
6
.flake8
Normal file
@ -0,0 +1,6 @@
|
||||
[flake8]
|
||||
inline-quotes = "
|
||||
multiline-quotes = """
|
||||
indent-size = 4
|
||||
max-line-length = 160
|
||||
ignore = Q003 E128 E704 E731
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
*.save
|
9
.gitlint
Normal file
9
.gitlint
Normal file
@ -0,0 +1,9 @@
|
||||
[general]
|
||||
ignore=body-is-missing,T3
|
||||
ignore-stdin=true
|
||||
|
||||
[title-match-regex]
|
||||
regex=[A-Z]
|
||||
|
||||
[author-valid-email]
|
||||
regex=[^@]+@k-space.ee
|
16
.pre-commit-config.yaml
Normal file
16
.pre-commit-config.yaml
Normal file
@ -0,0 +1,16 @@
|
||||
repos:
|
||||
- repo: https://github.com/PyCQA/flake8
|
||||
rev: 3.9.2
|
||||
hooks:
|
||||
- id: flake8
|
||||
additional_dependencies: [flake8-typing-imports==1.10.0,flake8-quotes==3.2.0]
|
||||
|
||||
- repo: https://github.com/jorisroovers/gitlint
|
||||
rev: v0.15.1
|
||||
hooks:
|
||||
- id: gitlint
|
||||
|
||||
- repo: https://github.com/Lucas-C/pre-commit-hooks-nodejs
|
||||
rev: v1.1.1
|
||||
hooks:
|
||||
- id: dockerfile_lint
|
7
Dockerfile
Normal file
7
Dockerfile
Normal file
@ -0,0 +1,7 @@
|
||||
FROM python:alpine
|
||||
LABEL name="k-space/microscript-skeleton" \
|
||||
version="rc" \
|
||||
maintainer="Lauri Võsandi <lauri@k-space.ee>"
|
||||
RUN pip install pymongo
|
||||
ADD main.py /main.py
|
||||
CMD /main.py
|
29
README.md
Normal file
29
README.md
Normal file
@ -0,0 +1,29 @@
|
||||
# Introduction
|
||||
|
||||
This repository is a skeleton for a microscript container image -- that
|
||||
is container that get's started either by Kubernetes Job or CronJob and
|
||||
that does not run forever.
|
||||
|
||||
In this particular example MongoDB is included in the setup.
|
||||
|
||||
# How to use this repository
|
||||
|
||||
* Fork with suitable name under `k-space` organization
|
||||
* Adjust maintainer name and e-mail in `Dockerfile
|
||||
* Add/remove dependencies as necessary in `Dockerfile`
|
||||
* Make sure `docker-compose.yml` brings up sensible development environment
|
||||
|
||||
# Prerequisites
|
||||
|
||||
* Docker runtime is installed
|
||||
* Your user is user of group `docker`
|
||||
* Docker compose is installed
|
||||
* Pre-commit framework is installed, if necessary `apt-get install pre-commit`
|
||||
|
||||
# Development environment
|
||||
|
||||
```
|
||||
docker-compose up --build
|
||||
```
|
||||
|
||||
To access MongoExpress open up http://localhost:8081/
|
27
docker-compose.yml
Normal file
27
docker-compose.yml
Normal file
@ -0,0 +1,27 @@
|
||||
version: '3.7'
|
||||
services:
|
||||
main:
|
||||
build:
|
||||
context: .
|
||||
|
||||
mongo:
|
||||
logging:
|
||||
driver: none
|
||||
image: mongo
|
||||
restart: always
|
||||
environment:
|
||||
MONGO_INITDB_ROOT_USERNAME: root
|
||||
MONGO_INITDB_ROOT_PASSWORD: example
|
||||
|
||||
mongo-express:
|
||||
logging:
|
||||
driver: none
|
||||
image: mongo-express
|
||||
restart: always
|
||||
ports:
|
||||
- 8081:8081
|
||||
environment:
|
||||
ME_CONFIG_MONGODB_ADMINUSERNAME: root
|
||||
ME_CONFIG_MONGODB_ADMINPASSWORD: example
|
||||
ME_CONFIG_MONGODB_URL: mongodb://root:example@mongo:27017/
|
||||
|
2
main.py
Executable file
2
main.py
Executable file
@ -0,0 +1,2 @@
|
||||
#!/usr/bin/env python
|
||||
print("Hello world")
|
Loading…
x
Reference in New Issue
Block a user