Skip to content

Docker Installation

Note

To avoid file permission issues, you should perform these steps as the user that will run the smartscope software.

1. Create a directory where you want to install SmartScope

mkdir /path/to/SmartScope/
cd /path/to/Smartscope/

2. Download the smartscope.sh

wget https://raw.githubusercontent.com/smartscope-org/SmartScope/latest/Docker/SmartScope/smartscope.sh
chmod +x smartscope.sh

Podman and older docker versions

If you're using podman, the command podman and podman-compose are used instead of docker and docker compose. Likewise, when using an old version of Docker, docker-compose may be used in place of docker compose.

To override add the replacement commands to a file named dockerCmd.txt

Example for podman:

echo "podman" > dockerCmd.txt
echo "podman-compose" >> dockerCmd.txt

Example for old docker:

echo "docker" > dockerCmd.txt
echo "docker-compose" > docke

3. Run the setup procedure do create the subdirectories and download initial configurations.

# Choose a version between latest and stable (beta)
./smartscope.sh setup VERSION
# Example
./smartscope.sh setup stable

4. Edit the smartscope.yml file to add your microscope path and the paths that you just created.

version: "3"
services:
smartscope:
image: ghcr.io/niehs/smartscope:0.8-rc.2  
user: ${UID}:${GID}
volumes: 
    # - /home/ubuntu/SmartScope/:/opt/smartscope/
    ######## ADD YOUR MAIN DATA LOCATION ##########
    - /mnt/nas/smartscope/:/mnt/data/
    # Example:
    # - /nfs/data/:/mnt/data/
    ######## ADD YOUR MICROSCOPES #########
    # The synthax from the microscope volumes is as follows:
    # - /path/to/where/serialem/will/write/files/:/mnt/your_scope_name_here/
    - /mnt/serialemComputer/smartscope/:/mnt/myscope1/
    # Example:
    # - /mnt/gatan_Raid_X/smartscope/:/mnt/arctica/

Multiple microscopes in a single installation

You can add multiple microscopes to the same SmartScope installation. Simply add an additional entry to the volumes section.

5. (Optional) Edit the configuration variables.

Detailed information about the configuration variables can be found here.

6. Start Smartscope

./smartscope.sh start

7. Log in to the web interface with the initial admin account.

You should now be able to access the smartscope interface at http://localhost:48000/.

The initial account is admin with password smartscope.

Note

You may need to change the domain and port number to reflect the docker-compose file with the port specified in the nginx service and one of the domains specified in the ALLOWED_HOSTS of the smartscope service.

8. The installation is done!

There is a few more set up steps to do in SerialEM and in the web portal to get up and running. Click here. for the instructions