clearml-server/docs/install_linux_mac.md
2020-01-05 09:19:37 +02:00

3.6 KiB

Launching the trains-server Docker in Linux or macOS

For Linux or macOS, use our pre-built Docker image for easy deployment. The latest Docker images can be found here.

For Linux users:

  • You must be logged in as a user with sudo privileges.
  • Use bash for all command-line instructions in this installation.

To launch trains-server on Linux or macOS:

  1. Install Docker.

  2. Verify the Docker CE installation. Execute the command:

     sudo docker run hello-world
    

    The expected is output is:

     Hello from Docker!
     This message shows that your installation appears to be working correctly.
     To generate this message, Docker took the following steps:
    
     1. The Docker client contacted the Docker daemon.
     2. The Docker daemon pulled the "hello-world" image from the Docker Hub. (amd64)
     3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading.
     4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal.
    
  3. For Linux only, install docker-compose. Execute the following commands (for more information, see Install Docker Compose in the Docker documentation):

     sudo curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
     sudo chmod +x /usr/local/bin/docker-compose
    
  4. Increase vm.max_map_count for ElasticSearch docker.

    Linux:

     echo "vm.max_map_count=262144" > /tmp/99-trains.conf
     sudo mv /tmp/99-trains.conf /etc/sysctl.d/99-trains.conf
     sudo sysctl -w vm.max_map_count=262144
     sudo service docker restart
    

    macOS:

     screen ~/Library/Containers/com.docker.docker/Data/vms/0/tty
     sysctl -w vm.max_map_count=262144
    
  5. Remove any previous installation of trains-server.

    WARNING: This clears all existing Trains databases.

     sudo rm -R /opt/trains/
    
  6. Create local directories for the databases and storage.

     sudo mkdir -p /opt/trains/data/elastic
     sudo mkdir -p /opt/trains/data/mongo/db
     sudo mkdir -p /opt/trains/data/mongo/configdb
     sudo mkdir -p /opt/trains/data/redis
     sudo mkdir -p /opt/trains/logs
     sudo mkdir -p /opt/trains/config
     sudo mkdir -p /opt/trains/data/fileserver
    
  7. For macOS only, open the Docker app, select Preferences, and then on the File Sharing tab, add /opt/trains.

  8. Grant access to the Dockers.

    Linux:

     sudo chown -R 1000:1000 /opt/trains
    

    macOS:

     sudo chown -R $(whoami):staff /opt/trains
    
  9. Download the trains-server docker-compose YAML file.

     cd /opt/trains
     curl https://raw.githubusercontent.com/allegroai/trains-server/master/docker-compose.yml -o docker-compose.yml
    
  10. Run docker-compose with the downloaded configuration file.

     sudo docker-compose -f docker-compose.yml up
    

    Your server is now running on http://localhost:8080 and the following ports are available:

    • Web server on port 8080
    • API server on port 8008
    • File server on port 8081

Next Step

Configure the Trains client for trains-server.