mirror of
https://github.com/marcogll/omarchy_setup.git
synced 2026-01-13 21:35:16 +00:00
- Created a log file capturing the setup process for the Omarchy script. - Included detailed steps for installing Zsh and related tools. - Documented errors encountered during package installations due to database lock. - Logged successful installations and configuration updates for Zsh and Oh My Zsh. - Captured user prompts and actions taken during the setup process.
72 lines
2.5 KiB
Bash
Executable File
72 lines
2.5 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# ===============================================================
|
|
# docker.sh - Configuración de Docker y Portainer
|
|
# ===============================================================
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
source "${SCRIPT_DIR}/common.sh"
|
|
|
|
install_docker() {
|
|
log_step "Configuración de Docker y Portainer"
|
|
|
|
# Instalar Docker
|
|
log_info "Instalando Docker y Docker Compose..."
|
|
sudo pacman -S --noconfirm --needed \
|
|
docker docker-compose || {
|
|
log_error "Error al instalar Docker"
|
|
return 1
|
|
}
|
|
|
|
# Habilitar y iniciar Docker
|
|
log_info "Habilitando servicio de Docker..."
|
|
sudo systemctl enable docker.service
|
|
sudo systemctl enable containerd.service
|
|
sudo systemctl start docker.service
|
|
|
|
# Agregar usuario al grupo docker (si no está ya)
|
|
if ! groups "$USER" | grep -q docker; then
|
|
log_info "Agregando usuario al grupo docker..."
|
|
sudo usermod -aG docker "$USER"
|
|
log_warning "Necesitarás cerrar sesión y volver a iniciar para usar Docker sin sudo"
|
|
fi
|
|
|
|
echo ""
|
|
read -p "¿Deseas instalar Portainer (interfaz web para Docker)? [S/n]: " confirm_portainer
|
|
if [[ ! "${confirm_portainer}" =~ ^[Nn]$ ]]; then
|
|
log_info "Configurando Portainer..."
|
|
|
|
# Verificar si Portainer ya está corriendo
|
|
if sudo docker ps -a --format '{{.Names}}' | grep -q "^portainer$"; then
|
|
log_info "Portainer ya existe. Reiniciando contenedor..."
|
|
sudo docker stop portainer 2>/dev/null || true
|
|
sudo docker rm portainer 2>/dev/null || true
|
|
fi
|
|
|
|
# Crear volumen y contenedor de Portainer
|
|
sudo docker volume create portainer_data 2>/dev/null || true
|
|
|
|
if sudo docker run -d -p 8000:8000 -p 9443:9443 \
|
|
--name portainer \
|
|
--restart=always \
|
|
-v /var/run/docker.sock:/var/run/docker.sock \
|
|
-v portainer_data:/data \
|
|
portainer/portainer-ce:latest; then
|
|
log_success "Portainer instalado y ejecutándose"
|
|
log_info "Accede a Portainer en: https://localhost:9443"
|
|
else
|
|
log_error "Error al instalar Portainer"
|
|
# No retornamos error, Docker ya está instalado.
|
|
fi
|
|
else
|
|
log_info "Se omitió la instalación de Portainer."
|
|
fi
|
|
|
|
log_success "Configuración de Docker completada."
|
|
return 0
|
|
}
|
|
|
|
# Ejecutar si se llama directamente
|
|
if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then
|
|
install_docker "$@"
|
|
fi
|