Make developpement with docker simply
Project description
Introduction
=================
docky : Make docker and docker compose simply !
History
----------
This project was initialy created for building odoo environments without effort based on docker-compose and docker
Step by step we make it generic and now we also use it for our rails, ruby developpment
How it works
---------------
Docky is depend on docker-compose and use exactly the same file (so you can move from docker-compose to docky and vice-versa without any effort)
Docky just make docker-compose simplier and integrate a default docker-compose file generator
Installation and Update
-------------------------
You need to install docker-ce : https://docs.docker.com/install/
Then install docky with python3
.. code-block:: shell
sudo pip3 install docky
Update Docky:
------------------
.. code-block:: shell
sudo pip3 install docky --upgrade
Configuration:
--------------
The configuration file is in your home : '~/.docky/config.yml'
verbose [True, False]:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Verbose mode is activated by default in order to help you to learn what docky do
env [dev, prod, preprod]:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Specify which kind of environment is used
network
~~~~~~~~~~~
Docker network configuration for all container run with docky
See docker configuration
proxy
~~~~~~
Proxy configuration:
- autostart: automatically start proxy when running the container
- custom_image: custom image name if needed
- name: name of the proxy container
Automatic Proxy
---------------
When doing dev, is quickly a mess to manage the port of your container, docky integrate a proxy (a basic docker image : https://github.com/akretion/docky-proxy/)
If you want to enjoy this proxy you need to configure a wildcard domain to *.dy to the IP 172.30.0.2
For that on mac and linux system you can install and configure dnsmasq
For Ubuntu (dnsmasq)
~~~~~~~~~~~~~~~~~~~~~~~
Install dnsmasq
```
sudo apt-get install dnsmasq
```
Then configure dnsmasq y adding the line "address=/dy/172.30.0.2" in "/etc/dnsmasq.conf"
Restart it
```
sudo systemctl restart dnsmasq
```
If you have some issue on ubutnu 18.04 please take a look here for the configuration
- https://computingforgeeks.com/install-and-configure-dnsmasq-on-ubuntu-18-04-lts/
- https://superuser.com/questions/1318220/ubuntu-18-04-disable-dnsmasq-base-and-enable-full-dnsmasq
editing the /etc/systemd/resolved.conf and setting "DNSStubListener=no" seem to be the simpliest solution
For Mac (dnsmasq)
~~~~~~~~~~~~~~~~~~~
Google is your friend by some link found, please share the doc you have found
https://passingcuriosity.com/2013/dnsmasq-dev-osx/
https://www.computersnyou.com/3786/how-to-setup-dnsmasq-local-dns/
For Windows (Acrylic DNS)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Dnsmasq is not available on windows but you can use Acrylic DNS to do exactly the same thing.
See answer here: https://stackoverflow.com/questions/138162/wildcards-in-a-windows-hosts-file?answertab=votes#tab-top
Getting Started
---------------------
Use docky --help
But basically docky run is your friend
READ the documentation: `Docky documentation <http://akretion.github.io/docky/master/index.html>`_
Troubleshooting
--------------------
To avoid issue 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
Other issue :
see https://github.com/akretion/docky/wiki
Changelog
----------
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
=================
docky : Make docker and docker compose simply !
History
----------
This project was initialy created for building odoo environments without effort based on docker-compose and docker
Step by step we make it generic and now we also use it for our rails, ruby developpment
How it works
---------------
Docky is depend on docker-compose and use exactly the same file (so you can move from docker-compose to docky and vice-versa without any effort)
Docky just make docker-compose simplier and integrate a default docker-compose file generator
Installation and Update
-------------------------
You need to install docker-ce : https://docs.docker.com/install/
Then install docky with python3
.. code-block:: shell
sudo pip3 install docky
Update Docky:
------------------
.. code-block:: shell
sudo pip3 install docky --upgrade
Configuration:
--------------
The configuration file is in your home : '~/.docky/config.yml'
verbose [True, False]:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Verbose mode is activated by default in order to help you to learn what docky do
env [dev, prod, preprod]:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Specify which kind of environment is used
network
~~~~~~~~~~~
Docker network configuration for all container run with docky
See docker configuration
proxy
~~~~~~
Proxy configuration:
- autostart: automatically start proxy when running the container
- custom_image: custom image name if needed
- name: name of the proxy container
Automatic Proxy
---------------
When doing dev, is quickly a mess to manage the port of your container, docky integrate a proxy (a basic docker image : https://github.com/akretion/docky-proxy/)
If you want to enjoy this proxy you need to configure a wildcard domain to *.dy to the IP 172.30.0.2
For that on mac and linux system you can install and configure dnsmasq
For Ubuntu (dnsmasq)
~~~~~~~~~~~~~~~~~~~~~~~
Install dnsmasq
```
sudo apt-get install dnsmasq
```
Then configure dnsmasq y adding the line "address=/dy/172.30.0.2" in "/etc/dnsmasq.conf"
Restart it
```
sudo systemctl restart dnsmasq
```
If you have some issue on ubutnu 18.04 please take a look here for the configuration
- https://computingforgeeks.com/install-and-configure-dnsmasq-on-ubuntu-18-04-lts/
- https://superuser.com/questions/1318220/ubuntu-18-04-disable-dnsmasq-base-and-enable-full-dnsmasq
editing the /etc/systemd/resolved.conf and setting "DNSStubListener=no" seem to be the simpliest solution
For Mac (dnsmasq)
~~~~~~~~~~~~~~~~~~~
Google is your friend by some link found, please share the doc you have found
https://passingcuriosity.com/2013/dnsmasq-dev-osx/
https://www.computersnyou.com/3786/how-to-setup-dnsmasq-local-dns/
For Windows (Acrylic DNS)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Dnsmasq is not available on windows but you can use Acrylic DNS to do exactly the same thing.
See answer here: https://stackoverflow.com/questions/138162/wildcards-in-a-windows-hosts-file?answertab=votes#tab-top
Getting Started
---------------------
Use docky --help
But basically docky run is your friend
READ the documentation: `Docky documentation <http://akretion.github.io/docky/master/index.html>`_
Troubleshooting
--------------------
To avoid issue 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
Other issue :
see https://github.com/akretion/docky/wiki
Changelog
----------
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
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
docky-5.0.2.tar.gz
(12.1 kB
view details)
Built Distribution
docky-5.0.2-py34+-none-any.whl
(29.9 kB
view details)
File details
Details for the file docky-5.0.2.tar.gz
.
File metadata
- Download URL: docky-5.0.2.tar.gz
- Upload date:
- Size: 12.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.0 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | af82768f6f6fcf91cbd958cfd46998b5cb3729c225b39594b2ea89d20a7969ce |
|
MD5 | fc855e34f0b5f3818454d6a1d750bf27 |
|
BLAKE2b-256 | 59af25597cf62e9f40bcfcc9c399580acb1ae93292a2e7686409c308d4885275 |
File details
Details for the file docky-5.0.2-py34+-none-any.whl
.
File metadata
- Download URL: docky-5.0.2-py34+-none-any.whl
- Upload date:
- Size: 29.9 kB
- Tags: Python 3.4+
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.0 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 842e0cdd56870fd91a05fdc14d421dece208977d7dd8174a6570f75043247786 |
|
MD5 | 9ca7f8153ef6a3afb23e6691e1647318 |
|
BLAKE2b-256 | 59e98ad4acd23487aaca7b69ee9450af5d8086c53c69bdf76decf5986aad826d |