The main key is to create two network interfaces, one will be used with traefik and the other one will be used for the containers to communicate with each other
In the yml
file I called them application
and traefik
, then you need to tell Traefik via the labels
to use one of them.
When you deploy a stack you will have a name for it, which is also used as a prefix for the netwroks .. etc, to make
it simple we will use the environment variables, so that we can have a flixable yml
file.
- First export the project name, change
my-project
to whatever you like.
export PROJECT_NAME=my-project
- Deploy your stack
docker stack deploy -c old_working.yml --prune $PROJECT_NAME
-
If you are not running ARM64 device, you need to use the official RethinkDB docker image as my image zaherg/rethinkdb:2.3.6 was built for ARM64 devices specifically.
-
Add
docker.pi
andrethinkdb.docker.pi
to your/etc/hosts
file so you can access them locally.
THE INSTRUCTIONS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.