RA1 - johnbarrero/Despliegue_DAW GitHub Wiki
Instalación del entorno para el servidor Web
Configuración inicial para la máquina virtual Ubuntu Server y Docker.
1. Instalación inicial de Ubuntu Server
-
Versión: Ubuntu Server 26.04.1 LTS
-
Datos del usuario:
- Nombre:
John - Usuario:
johnbarrero - Nombre del servidor:
johnserver
- Nombre:
-
Importante: Marcar la casilla para instalar OpenSSH Server durante el asistente.
2. Configurar IP estática con Netplan
Modificar el archivo de configuración de red:
sudo nano /etc/netplan/00-installer-config.yaml
network:
ethernets:
ens33:
dhcp4: false
dhcp6: false
match:
macaddress: 00:0c:29:fa:3b:21
set-name: ens33
addresses:
- 192.168.147.129/24
routes:
- to: default
via: 192.168.147.2
nameservers:
addresses: [8.8.8.8, 1.1.1.1]
version: 2
Aplicar los cambios
sudo netplan apply
Comprobar que los cambios se han aplicado en el terminal fuera de VMWare
ssh [email protected]
3. Instalación de Docker
Eliminar versiones previas
sudo apt remove $(dpkg --get-selections docker.io docker-compose docker-compose-v2 docker-doc docker-buildx podman-docker containerd runc | cut -f1)
Configurar el repositorio APT oficial de Docker
Añade la clave GPG oficial de Docker:
sudo apt update
sudo apt install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
Añadir el repositorio a las fuentes de Apt:
sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF
Actualizar la lista de paquetes para indexar Docker:
sudo apt update
Instalación nginx
Crear la estructura de carpetas y acceder al directorio del proyecto:
sudo mkdir -p /opt/nginx-server/html
cd /opt/nginx-server
Desde el directorio: cd /opt/nginx-server crear el archivo de configuración docker-compose.yml:
mkdir -p html
Crear el archivo docker-compose.yml
nano docker-compose.yml
services:
web:
image: nginx:latest
container_name: nginx-web
ports:
- "80:80"
- "443:443"
restart: always
volumes:
- ./html:/usr/share/nginx/html
Importante: Asignar los permisos de la carpeta html al usuario para poder modificar los archivos:
sudo chown -R johnbarrero:johnbarrero /opt/nginx-server/html
Iniciar los servicios de Docker
docker compose up -d
Comprobación y subida de archivos (WinSCP)
Para verificar la conexión y subir contenido web al servidor mediante SFTP:
- Conectarse por SFTP a la IP del servidor con el usuario y contraseña.
- Navegar a la ruta:
/opt/nginx-server/html/ - Subir un archivo html para comprobar que se transfieren los archivos y se aplican los permisos correctamente.