portainer/portainer-compose

Raspberry Pi compatibility

Tabaluga opened this issue · 3 comments

Dear @deviantony,

thanks for your great effort to create this project.

Currently I'm learning Docker onto my Raspberry Pi and want to manage my containers with Portainer and for the installation of Portainer I used your project files, but there are some errors while I try to initialize the containers.

As base docker operating system I'm using HypriotOS.

Is your project compatible with the Raspberry Pi?

Best regards

Hi @Tabaluga

Portainer is built for arm/arm64, so you can use the portainer/portainer image on your Raspberry Pi. Unfortunately, the whole stack as deployed by this project is not fully compatible with the Raspberry (nginx/templates and watchtower do no support arm).

You'd need to create your own stack, or simply use Portainer :-)

Ping me if you need more information, I'll close this issue.

Hi @deviantony ,

thanks for your feedback & please excuse my late response.

I'm still learning Docker and have found yesterday the final solution to run Portainer and Watchtower onto my Rasperry Pi using HypriotOS.

I've included my docker-compose.yml files for further information so you could simply create the Rasberry Pi compatibility and I want to ask if you could give me a short feedback about my soultion.

One question I still can't solve: Do I need the expose command for Portainer and why?

My next step is to create the port forwading rules.

Thanks for your feedback.

best regards

1 Portainer: docker-compose.yml

# create new portainer container for raspberry pi with docker-compose
# start:    `docker-compose up -d`
# upgrade:  `docker-compose down && docker rm portainer-app && docker-compose up -d`
# address:  [localhost](http://localhost:9000)
# sources:  [github.com](github.com/portainer/portainer-compose.git)
#           [hypriot.com](blog.hypriot.com/post/new-docker-ui-portainer)
# date:     2017-07-01

version: '2'
services:
  portainer:
    image: portainer/portainer:latest
      # using portainer image for raspberry pi by deviantony
      # sources: [github.com](https://github.com/portainer/portainer.git)
    container_name: portainer-app
    volumes:
      # establish connection to docker
      - /var/run/docker.sock:/var/run/docker.sock
      # data directory for this app
      - /opt/docker/portainer/data:/data
    ports:
      # http port
      - "9000:9000"
    expose:
      # listening port to docker
      - "9000"
    restart: on-failure

2 Watchtower: docker-compose.yml

# create new watchtower container for raspberry pi with docker-compose
# start:    `docker-compose up -d`
# upgrade:  `docker-compose down && docker rm watchtower-app && docker-compose up -d`
# sources:  [niels.nu](http://vps2.niels.nu/blog/2017/continuous-blog-delivery-p1.html)
# date:     2017-07-01

version: '2'
services:
  watchtower:
    image: v2tec/watchtower:armhf-latest
      # using watchtower image for raspberry pi by v2tec
      # sources: [github.com](https://github.com/v2tec/watchtower.git)
    container_name: watchtower-app
    command: --interval 60 --cleanup --debug
      # change update check intervall `--schedule @hourly --cleanup` if no errors arise
    volumes:
      # establish connection to docker
      - /var/run/docker.sock:/var/run/docker.sock
    restart: on-failure
      # this app don't require any `ports` or `expose` settings

Hi @Tabaluga
I don't think that you need the expose section, you can probably remove it. Glad you managed to make it run on Raspberry Pi.