Skip to content

Eraz1997/kiwi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

64 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kiwi 🥝

Self-hosted cloud platform for DIY projects, based on Docker containers.

Installation (Linux Only) 🍓

  1. Install Docker (guide).

  2. Follow the "Linux post-installation steps for Docker Engine"

  3. Grant Docker permissions to publish on port 443:

    sudo setcap CAP_NET_BIND_SERVICE=+eip $(which docker)
  4. Create a file at /etc/systemd/system/kiwi.service with the following content, making sure to replace <user> with your user name and <sha> with a valid Kiwi Docker image SHA

    [Unit]
    Description=Kiwi
    After=docker.service
    Requires=docker.service
    
    [Service]
    User=<user>
    Group=<user>
    TimeoutStartSec=0
    Restart=always
    ExecStartPre=-/usr/bin/docker stop kiwi
    ExecStartPre=-/usr/bin/docker rm kiwi
    ExecStart=/usr/bin/docker run --rm --name kiwi \
        --volume /home/<user>/.kiwi:/config \
        --volume /var/run/docker.sock:/var/run/docker.sock \
        --network host \
        --add-host status.kiwi-local.com:127.0.0.1 \
        --stop-timeout 15 \
        ghcr.io/eraz1997/kiwi@sha256:<sha>
    ExecStop=/usr/bin/docker exec kiwi stop
    
    [Install]
    WantedBy=default.target
    
  5. Activate and run the service

    sudo systemctl daemon-reload
    sudo systemctl enable kiwi.service
    sudo systemctl start kiwi.service
  6. Based on your operating system, make sure port 443 is reachable from the Internet at your public IP address.

  7. Configure a domain and a wildcard A record pointing to your public IP address. Kiwi won't work without a proper initial DNS setup. Do not worry about Dynamic DNS, it's part of the features Kiwi offers.

Updates 🙃

  1. Replace the Docker image <sha> with a newer value inside the /lib/systemd/user/kiwi.service file

  2. Reload and restart the service

    sudo systemctl daemon-reload
    sudo systemctl restart kiwi.service

Usage 🚀

Refer to the user manual.

Development 👨‍💻

Refer to the development guidelines.

About

Self-hosted cloud platform for DIY projects, based on Docker containers.

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors 2

  •  
  •  

Languages