first try
This commit is contained in:
		
							parent
							
								
									220b93a044
								
							
						
					
					
						commit
						e92aba8dc8
					
				
							
								
								
									
										91
									
								
								installEmulatorjs.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										91
									
								
								installEmulatorjs.sh
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,91 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
 | 
			
		||||
# Script to install Docker and set up EmulatorJS
 | 
			
		||||
# Works on Debian/Ubuntu, Fedora, and CentOS/RHEL
 | 
			
		||||
 | 
			
		||||
# Function to install Docker
 | 
			
		||||
install_docker() {
 | 
			
		||||
    echo "Installing Docker..."
 | 
			
		||||
    if command -v apt &> /dev/null; then
 | 
			
		||||
        # Debian/Ubuntu
 | 
			
		||||
        sudo apt update
 | 
			
		||||
        sudo apt install -y curl apt-transport-https ca-certificates software-properties-common
 | 
			
		||||
        sudo apt update
 | 
			
		||||
        sudo apt install -y docker docker-compose
 | 
			
		||||
        sudo usermod -aG docker $USER
 | 
			
		||||
    elif command -v dnf &> /dev/null; then
 | 
			
		||||
        # Fedora
 | 
			
		||||
        sudo dnf install -y dnf-plugins-core
 | 
			
		||||
        sudo dnf config-manager --add-repo https://download.docker.com/linux/fedora/docker-ce.repo
 | 
			
		||||
        sudo dnf install -y docker-ce docker-ce-cli containerd.io
 | 
			
		||||
        sudo systemctl start docker docker-compose
 | 
			
		||||
        sudo systemctl enable docker docker-compose
 | 
			
		||||
        sudo usermod -aG docker $USER
 | 
			
		||||
    elif command -v yum &> /dev/null; then
 | 
			
		||||
        # CentOS/RHEL
 | 
			
		||||
        sudo yum install -y yum-utils
 | 
			
		||||
        sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
 | 
			
		||||
        sudo yum install -y docker-ce docker-ce-cli containerd.io
 | 
			
		||||
        sudo systemctl start docker docker-compose
 | 
			
		||||
        sudo systemctl enable docker docker-compose
 | 
			
		||||
        sudo usermod -aG docker $USER
 | 
			
		||||
    else
 | 
			
		||||
        echo "Unsupported distribution. Exiting."
 | 
			
		||||
        exit 1
 | 
			
		||||
    fi
 | 
			
		||||
    echo "Docker installed successfully."
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# Function to create directories for EmulatorJS
 | 
			
		||||
create_directories() {
 | 
			
		||||
    echo "Creating directories for EmulatorJS..."
 | 
			
		||||
    mkdir -p $HOME/emulatorjs/config
 | 
			
		||||
    mkdir -p $HOME/emulatorjs/data
 | 
			
		||||
    echo "Directories created at $HOME/emulatorjs/config and $HOME/emulatorjs/data."
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# Function to deploy EmulatorJS using Docker Compose
 | 
			
		||||
deploy_emulatorjs() {
 | 
			
		||||
    echo "Deploying EmulatorJS..."
 | 
			
		||||
    cat <<EOF > $HOME/emulatorjs/docker-compose.yml
 | 
			
		||||
services:
 | 
			
		||||
  emulatorjs:
 | 
			
		||||
    image: lscr.io/linuxserver/emulatorjs:latest
 | 
			
		||||
    container_name: emulatorjs
 | 
			
		||||
    environment:
 | 
			
		||||
      - PUID=1000
 | 
			
		||||
      - PGID=1000
 | 
			
		||||
      - TZ=Etc/UTC
 | 
			
		||||
    volumes:
 | 
			
		||||
      - $HOME/emulatorjs/config:/config
 | 
			
		||||
      - $HOME/emulatorjs/data:/data
 | 
			
		||||
    ports:
 | 
			
		||||
      - 3000:3000
 | 
			
		||||
      - 80:80
 | 
			
		||||
      - 4001:4001
 | 
			
		||||
    restart: unless-stopped
 | 
			
		||||
EOF
 | 
			
		||||
 | 
			
		||||
    cd $HOME/emulatorjs
 | 
			
		||||
    docker-compose up -d
 | 
			
		||||
    echo "EmulatorJS deployed successfully!"
 | 
			
		||||
    echo "Access it at http://localhost:3000"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# Main script
 | 
			
		||||
if ! command -v docker &> /dev/null; then
 | 
			
		||||
    install_docker
 | 
			
		||||
    echo "Please log out and log back in to apply Docker group changes."
 | 
			
		||||
    echo "Then re-run this script to continue."
 | 
			
		||||
    exit 0
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
if ! command -v docker-compose &> /dev/null; then
 | 
			
		||||
    echo "Installing Docker Compose..."
 | 
			
		||||
    sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
 | 
			
		||||
    sudo chmod +x /usr/local/bin/docker-compose
 | 
			
		||||
    echo "Docker Compose installed successfully."
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
create_directories
 | 
			
		||||
deploy_emulatorjs
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user