Deploying with Docker
Before proceeding, we recommend reading Introduction, which can quickly help you understand Ikaros.
This document only provides a way to run Docker with the default H2 database, mainly for experience and testing. We do not recommend using the H2 database in a production environment.
If you need to deploy with another database, we recommend using Docker Compose: Deploying with Docker Compose
Setting Up the Environment
- Docker Installation Guide: https://docs.docker.com/engine/install/
We recommend installing Docker following the official Docker documentation, as the Docker version in the software repositories of some Linux distributions may be outdated.
Using Docker Image
Available Docker images for Ikaros:
Currently, Ikaros has not updated the Docker image with the latest
tag, mainly because no official version has been released yet. We recommend using specific version tags, such as ikarosrun/ikaros:v0.11.5
.
ikarosrun/ikaros:v0.11.5
: Represents the latest available image. A new image is built for each release based on GitHub tags.ikarosrun/ikaros:dev
: Represents the image in development. It is not recommended for use, as it is rebuilt and overwritten with each merged Pull Request into the main branch.
Subsequent documentation will use ikarosrun/ikaros:v0.11.5
as an example.
Create a Container
docker run \
-it -d \
--name ikaros \
-p 9999:9999 \
-v ~/.ikaros:/root/.ikaros \
ikarosrun/ikaros:v0.11.5 \
--ikaros.security.initializer.master-username=tomoki \
--ikaros.security.initializer.master-password=tomokiinfoNote: This command uses the built-in H2 Database by default. If you want to use PostgreSQL, please refer to: Deploying with Docker Compose
- -it: Enables input and connects to a pseudo-terminal.
- -d: Runs the container in the background.
- --name: Specifies a name for the container.
- -p: Port mapping, in the format of
host_port:container_port
. - -v: Maps the working directory, in the form of
-v host_path:/root/.ikaros
, where the latter cannot be modified.
Parameter Details:
<DockerArgs />
Access the Ikaros management page by visiting
/console
in your browser. The username and password are the ones set in the startup parameters asmaster-username
andmaster-password
.tipIf not started with these parameters, the default username is
tomoki
, and the password will be printed in the logs (printed only on the first run).
Upgrade Version
Pull the new version image (please choose the latest tag and replace
v0.11.5
below)docker pull ikarosrun/ikaros:v0.11.5
Stop the running container
docker stop ikaros
docker rm ikarosBackup Data (Important)
cp -r ~/.ikaros ~/ikaros.archive
It's worth noting that the
ikaros.archive
filename doesn't necessarily have to follow the naming convention in this document. This is just an example.Update Ikaros
After modifying the version number, recreate the container following the initial installation method.
docker run \
-it -d \
--name ikaros \
-p 9999:9999 \
-v ~/.ikaros:/root/.ikaros \
ikarosrun/ikaros:v0.11.5 \
--ikaros.security.initializer.master-username=tomoki \
--ikaros.security.initializer.master-password=tomoki