All Projects → akretion → docky

akretion / docky

Licence: AGPL-3.0 license
Docky - Helper for docker-compose mainly used in odoo context

Programming Languages

python
139335 projects - #7 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to docky

contract
No description or website provided.
Stars: ✭ 130 (+182.61%)
Mutual labels:  odoo
generic-addons
Set of generic addons for Odoo
Stars: ✭ 26 (-43.48%)
Mutual labels:  odoo
VscOdooSnippets
Odoo Snippets for Visual Studio Code
Stars: ✭ 29 (-36.96%)
Mutual labels:  odoo
account-invoice-reporting
Odoo Invoicing reports
Stars: ✭ 51 (+10.87%)
Mutual labels:  odoo
odoo-th
Ready to use Odoo with OCA Thai localization modules
Stars: ✭ 29 (-36.96%)
Mutual labels:  odoo
speed-admin
A rapid application development framework for Laravel.
Stars: ✭ 31 (-32.61%)
Mutual labels:  odoo
account-reconcile
Odoo account reconciliation modules (statements, data completion...)
Stars: ✭ 85 (+84.78%)
Mutual labels:  odoo
angular-odoo
Call Odoo webservices from AngularJS
Stars: ✭ 41 (-10.87%)
Mutual labels:  odoo
framework
Solu Framework is a full featured, ORM-backed, isomorphic framework using RPython, Pouch/CouchDB and React.
Stars: ✭ 20 (-56.52%)
Mutual labels:  odoo
odoo-11.0-windows-installation
Install odoo-11.0 from source on Windows
Stars: ✭ 34 (-26.09%)
Mutual labels:  odoo
odoo-cypress
Odoo Framework E2E Testing using Cypress
Stars: ✭ 19 (-58.7%)
Mutual labels:  odoo
addons-konos
Konos Chilean Addons
Stars: ✭ 16 (-65.22%)
Mutual labels:  odoo
odooku
Run Odoo as a service
Stars: ✭ 52 (+13.04%)
Mutual labels:  odoo
rma
Odoo for Return Merchandise Authorization (RMA)
Stars: ✭ 68 (+47.83%)
Mutual labels:  odoo
odoo-k8s
Odoo on Kubernetes demo application. (with minikube and standalone)
Stars: ✭ 40 (-13.04%)
Mutual labels:  odoo
odoo
odoo modules and widget since 30/04/2017 will be here. Odoo apps there --->
Stars: ✭ 17 (-63.04%)
Mutual labels:  odoo
odoo-helper-scripts
The easiest way to install and manage development odoo instances / projects.
Stars: ✭ 34 (-26.09%)
Mutual labels:  odoo
dockerdoo
Flexible and streamlined Odoo image to be used with docker-compose, docker swarm or Kubernetes. Fully integrated to with VSCode devcontainers
Stars: ✭ 55 (+19.57%)
Mutual labels:  odoo
muk base
MuK Odoo Base Modules
Stars: ✭ 33 (-28.26%)
Mutual labels:  odoo
oxide
Oxide Odoo Distribution
Stars: ✭ 13 (-71.74%)
Mutual labels:  odoo

Introduction

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

Intialize an odoo project (docky init) from a template and keep it in sync.

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: commands

docky init

Bootstraps a odoo project using a template (https://github.com/akretion/docky-odoo-template) This will ask you a series of questions to create customized .env and docker-compose.yml files that you can further edit. Note that the template presumes that you have a running Traefik container on the "traefik" docker network.

For more information on other commands, use docky --help and check the documentation.

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 : docker/compose#6151

Changelog

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
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].