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.1.tar.gz
(12.1 kB
view details)
Built Distribution
docky-5.0.1-py34+-none-any.whl
(29.9 kB
view details)
File details
Details for the file docky-5.0.1.tar.gz
.
File metadata
- Download URL: docky-5.0.1.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 | 49ca94aaa088a99168068cacdfca2cc717a10c01bbe00d3dba2d2d13d6e7678e |
|
MD5 | e630686cd059b8feedbfe369db67d225 |
|
BLAKE2b-256 | 93c962c954cd6b45271eaeeea5a0c0cf83224282a465c9f1c0e61ee959496cdb |
File details
Details for the file docky-5.0.1-py34+-none-any.whl
.
File metadata
- Download URL: docky-5.0.1-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 | f53004ea9164829d327b457c0b5fb7c3950e19ced0705a70e86614baf9c98e69 |
|
MD5 | 5153b0d73cb8223c062fd6b33718f19b |
|
BLAKE2b-256 | 1842a99abd395de740c5af21d15c4fd32e1e55cb397c4906dc19d51c10ede9ea |