Skip to main content

docky is a dev tool to set up and run multiple odoo projects.

History & motivation

This project was initially created for building Odoo environments without effort based on docker-compose and docker.

Main features

Simplify docker-compose CLI with few short cuts.

Requirements

docker-ce : https://docs.docker.com/install/ (or podman)

Installation

Docky is available from pypi

pip install docky
# or with pipx : pipx install docky --include-deps

Update Docky

pip install docky --upgrade
# or with pipx : pipx upgrade docky --include-deps

Usage: labels

The label docky.main.service and docky.user

docky.main.service: odoo
docky.user: odoo

Allows you to define the main service of your docker-compose.yml file, and to specify the command line user for the container when you run for example ‘docky run’.

Usage: recommendations

  • Use ak to build your project.

  • When developing, if you are on several projects at once, it quickly becomes a mess to manage different ports of your containers. We recommend usage of Traefik. Here is an example docker-compose.yml file for local development purposes:

version: "3.7"
services:
    traefik:
    image: "traefik:v2.1"
    restart: always
    container_name: "traefik"
    command:
        - "--api.insecure=true"
        - "--providers.docker=true"
        - "--providers.docker.exposedbydefault=false"
        - "--entrypoints.web.address=:80"
    ports:
        - "127.0.0.1:80:80"
        - "127.0.0.1:8080:8080"
    volumes:
        - "/var/run/docker.sock:/var/run/docker.sock:ro"
    networks:
    - traefik

networks:
    traefik:
        name: traefik

More info about Traefik config on this repo: https://github.com/akretion/traefik-template

Troubleshooting

To avoid issues with line wrapping with “docky open” please use a version of docker > to 18.06.0-ce see : https://github.com/docker/compose/issues/6151

Changelog

version 9.0.0 - Migration from docker-compose to docker compose

version 8.0.0 - remove docky init

version 7.0.7 - update copier depency - adapt readme

version 7.0.6 - update copier dep to 6.0.0a9 - remove dead code (old template)

version 7.0.5 - fix requirements.txt

version 7.0.4 - use copier for managing the template - drop python 3.5 support

version 7.0.0

  • remove the need of docky config file in $HOME

  • use .env to be more compatible with docker-compose

  • improve templates

  • create init command

  • heavy refactoring

version 6.0.0

  • refactor remove proxy code and use traefik

  • remove docky.yml now you must use labels on services (see doc)

  • add option “–service=myservice” on docky run and docky open

version 5.0.0:

  • Resolve mac compatibility by remove proxy code that use a mounted version of etc/hosts now you need to install dnsmasq. This should also solve windows compatibilty by using the local dns https://stackoverflow.com/questions/138162/wildcards-in-a-windows-hosts-file?answertab=votes#tab-top

  • Solve issue with project name in multi user env (the name is based on user + directory name)

  • Add possibility to specify the service for run, open, logs, kill, down, restart, start cmd for example now you can do “docky open db” to open a terminal on the db server or you can restart a service like “docky restart varnish”

  • Solve issue with missing aliases name

  • Solve issue with missing environment variable with docky open (now we use a monkey-pacthed version of docker-compose exec)

  • Fix documentation build

  • Improve docky none specific cmd to a project to be run without project. For example, you can use docky help, docky proxy outside of a directory project

Release files for docky 9.0.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for docky 9.0.4
File Size Uploaded
docky-9.0.4.tar.gz 20.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for docky 9.0.4
File Interpreter ABI Platform
docky-9.0.4-py34+-none-any.whl Details

Total release size: 41.8 kB

Release files / docky-9.0.4.tar.gz

Download URL docky-9.0.4.tar.gz
Size 20.9 kB
Tags Source
SHA-256 checksum
How to use checksums
5ea5fcf84fc16c4aea96281be1e4912ee35cccc96413f542ca521547ad2ce159
BLAKE2b-256 checksum
How to use checksums
3fa579dcc104fcae2921785970c10283612b77901af3fdcaa3fc2809e799b552
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release files / docky-9.0.4-py34+-none-any.whl

Download URL docky-9.0.4-py34+-none-any.whl
Size 20.9 kB
SHA-256 checksum
How to use checksums
3c2fbb0405000538def88d12ac12430a896c0046880c7ad7589478614948c6d3
BLAKE2b-256 checksum
How to use checksums
6ee4f127e158441e6c36343d4063116b064b948740ad17bd9097fdfb400748a3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release history Release notifications | RSS feed

This release

9.0.4 This release

2 release files

9.0.3

2 release files

9.0.2

2 release files

9.0.1

2 release files

9.0.0

2 release files

8.0.0

2 release files

7.0.3

2 release files

7.0.2

2 release files

6.0.1

2 release files

5.0.3

2 release files

5.0.2

2 release files

5.0.1

2 release files

4.0.4

2 release files

4.0.3

2 release files

4.0.2

2 release files

4.0.1

2 release files

3.0.7

2 release files

3.0.6

2 release files

3.0.5

2 release files

3.0.4

2 release files

3.0.3

2 release files

3.0.2

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page