Listado de la etiqueta: utilizar



MS SQL Server o Microsoft SQL Server es un RDBMS (Sistema de Mandato de Bases de Datos Relacionales) desarrollado por Microsoft. Como servidor de bases de datos, se utiliza para juntar datos para tus aplicaciones. El Servidor SQL es ideal para múltiples propósitos de aplicaciones, puedes utilizar MS SQL Server como pulvínulo de datos para tus aplicaciones de escritorio, utilizarlo para tus aplicaciones web, o cualquier pequeña aplicación de servidor.

En este tutorial, te mostraré cómo instalar MS SQL Server en un servidor Rocky Linux, configurar SQL Tools para diligenciar SQL Server y todavía memorizar el funcionamiento central de SQL Server para diligenciar bases de datos.

Requisitos previos

Antiguamente de emprender con esta prontuario, asegúrate de que tienes los siguientes requisitos:

  • Un servidor Rocky Linux – este ejemplo utiliza el Rocky Linux v8.x.
  • Un heredero natural o no root con privilegios sudo root – aunque todavía puedes utilizar el heredero root.
  • SELinux con modo permisivo.

Añadir repositorio

MS SQL Server es uno de los populares RDBMS (Sistemas de Mandato de Bases de Datos Relacionales) creados por Microsoft. Para instalar SQL Server, debes añadir el repositorio oficial de SQL Server a tu sistema.

Ahora, añadirás el repositorio de SQL Server para SQL Server 2019.

Antiguamente de añadir el repositorio de SQL Server, ejecuta el posterior comando dnf para instalar las dependencias básicas.

sudo dnf install dnf-plugins-core curl -y

A continuación, ejecuta el posterior comando curl para descargar el repositorio de SQL Server en tu servidor Rocky Linux. El nuevo repositorio de SQL Server se guardará en ‘/etc/yum.repos.d/mssql-server.repo’.

sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/8/mssql-server-2019.repo

Por zaguero, comprueba la repertorio de repositorios disponibles en tu sistema mediante el posterior comando dnf. Deberías obtener el repositorio de MS SQL Server 2019 añadido a tu servidor Rocky Linux.

sudo dnf repolist

configurar repositorio

Ahora que el repositorio de MS SQL Server está añadido, a continuación instalarás el paquete de MS SQL Server y empezarás a configurarlo.

Instalar MSSQL Server

Una vez añadido el repositorio, ahora iniciarás la instalación y configuración de MS SQL Server. Puedes instalarlo mediante el comando dnf, y emprender a configurar el servidor SQL mediante el comando ‘mssql-conf’ que proporcionan los paquetes de SQL Server.

Ejecuta el posterior comando dnf para instalar el Servidor SQL en el servidor Rocky Linux.

sudo dnf install mssql-server

Cuando se te pida la configuración, introduce y y pulsa ENTER para continuar.

instalar servidor mssql

Encima, se te pedirá que aceptes la secreto GPG del repositorio de MS SQL Server. Introduce y y pulsa ENTER de nuevo para continuar, y comenzará la instalación.

clave gpg

Una vez instalado SQL Server, empieza a configurarlo con la aparejo‘mssql-conf‘.

Ejecuta el posterior comando ‘mssql-confsetup‘ para establecer y configurar la instalación de SQL Server.

sudo /opt/mssql/bin/mssql-conf setup
  • Elige la tiraje de MS SQL Server que quieras instalar. En este ejemplo, instalarás MS SQL Server Express. Luego, introduce el número 3 y pulsa INTRO.
  • En cuanto a las Condiciones de Osadía, introduce «Sí» para aceptarlas.
  • Por zaguero, introduce la nueva contraseña para tu instalación de MS SQL Server y repite la contraseña.

configurar ms sql server

Cuando termine la configuración de SQL Server, verás un mensaje como el posterior. Puedes ver el mensaje en tu terminal ‘Laconfiguración se ha completado correctamente. SQL Server se está ejecutando‘.

sql server se está ejecutando

A continuación, verifica el servicio ‘mssql-server ‘ mediante el posterior comando systemctl para asegurarte de que el servicio se está ejecutando.

sudo systemctl is-enabled mssql-server
sudo systemctl status mssql-server

Verás que«mssql-server » está activado y se ejecutará automáticamente al nacer el sistema. Y el estado presente es en ejecución.

verificar sql server

Si quieres permitir el acercamiento remoto a tu MS SQL Server en tu entorno específico, debes añadir el puerto de MS SQL Server al firewalld.

Por defecto, SQL Server se ejecuta en el puerto TCP 1433, ejecuta el posterior comando firewall-cmd para añadir el puerto de SQL Server y, a continuación, vuelve a cargar para aplicar los nuevos cambios.

sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
sudo firewall-cmd --reload

El MS SQL Server ya está instalado y configurado. A continuación, instalarás MS SQL Tools, que se utilizará para conectar y diligenciar SQL Server.

Instalar y configurar las Herramientas SQL

MS SQL Tools es una aparejo de límite de comandos proporcionada por Microsoft para diligenciar SQL Server. Contiene dos herramientas diferentes, la ‘sqlcmd’ es el cliente SQL para diligenciar el SQL Server, y la aparejo ‘bcp’ es para la utilidad de importación-exportación y copia de seguridad.

Las Herramientas SQL tienen su paquete repositorio. Luego, ahora añadirás el repositorio de SQL Tools y, a continuación, instalarás y configurarás SQL Tools en el sistema ROcky Linux.

Ejecuta el posterior comando para añadir el repositorio de SQL Tools a tu sistema Rocky Linux.

sudo curl -o /etc/yum.repos.d/mssql-prod.repo https://packages.microsoft.com/config/rhel/8/prod.repo

Puedes efectuar la repertorio de repositorios en tu sistema mediante el posterior comando dnf. Verás que el repositorio de SQL Tools está añadido.

sudo dnf repolist

añadir repo sql

A continuación, ejecuta el posterior comando para instalar SQL Tools en tu servidor Rocky Linux.

sudo dnf install mssql-tools unixODBC-devel

Cuando se te pida que confirmes la instalación, introduce y y pulsa INTRO para continuar.

instalar herramientas sql

Todavía se te pedirá que confirmes la secreto GPP del repositorio de SQL Tools. Introduce y para añadir la secreto GPG y pulsa ENTER para confirmar.

Encima, se te pedirán dos condiciones de Osadía para las Herramientas SQL. Introduce Sí para aceptar ambas Licencias y comenzará la instalación.

aceptar licencia

Una vez instaladas las Herramientas SQL, puedes comprobar el directorio de instalación de las Herramientas SQL en ‘/opt/mssql-tools’. Puedes ver varios directorios para las configuraciones de las Herramientas SQL y el directorio bin, donde se almacena el ejecutable principal de las Herramientas SQL.

A continuación, debes añadir el directorio bin de las Herramientas SQL‘/opt/mssql-tools/bin‘ a la variable de entorno PATH mediante el archivo‘~/.bashrc‘. Esto te permitirá ejecutar las Herramientas SQL sin una ruta completa a los archivos binarios ejecutables.

Ejecuta el posterior comando para añadir el directorio bin de las Herramientas SQL a la variable de entorno PATH.

echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc

Ahora, vuelve a cargar la configuración ~/.bashrc y comprueba la variable de entorno PATH. Verás que el directorio bin de las Herramientas SQL‘/opt/mssql-tools/bin‘ se ha añadido a la variable de entorno PATH.

source ~/.bashrc
echo $PATH

configurar herramientas sql

Todavía puedes verificarlo utilizando el posterior comando. Esto localizará el archivo binario de las Herramientas SQL‘sqlcmd‘ y‘bcp‘, que está almacenado en el directorio ‘/opt/mssql-tools/bin‘.

which sqlcmd
which bcp

Una vez instaladas las Herramientas SQL, ahora aprenderás a conectarte al Servidor SQL mediante el comando ‘sqlcmd‘.

Conectarse al Servidor SQL utilizando las Herramientas SQL

Llegados a este punto, ya has instalado y configurado el MS SQL Server y las Herramientas SQL en el servidor Rocky Linux. A continuación, aprenderás a conectarte al Servidor SQL mediante las Herramientas SQL ‘sqlcmd‘.

Ejecuta el posterior comando ‘sqlcmd‘ para conectarte al Servidor SQL. Encima, cambia la contraseña por la contraseña de tu Servidor SQL que se configuró durante la grado de instalación.

sqlcmd -S localhost -U SA -P 'YourPassword'

A posteriori de conectarte al Servidor SQL, ejecuta la posterior consulta para efectuar la traducción presente del Servidor SQL que acabas de instalar.

select @@version
go

Verás un resultado como el posterior La traducción presente del Servidor SQL que se instaló es«Microsoft SQL Server 2019«.

conectarse al servidor mssql

A continuación, todavía puedes comprobar y efectuar las bases de datos predeterminadas disponibles en el Servidor SQL mediante las siguientes consultas. Verás cuatro bases de datos predeterminadas en SQL Server, que son master, tempdb, model y msdb.

select name from sys.databases;
go

Ahora puedes pulsar‘Ctrl+c’ para salir de las Herramientas SQL‘sqlcmd‘.

Operaciones básicas MS SQL Server

Ahora que has aprendido a conectarte a SQL Server mediante el comando ‘sqlcmd‘. A continuación, aprenderás las consultas básicas de los servidores SQL para diligenciar bases de datos.

Ejecuta la posterior consulta para crear una nueva pulvínulo de datos SQL Server‘TestDB‘.

CREATE DATABASE TestDB

Ahora comprueba la repertorio de la pulvínulo de datos en tu Servidor SQL mediante la posterior consulta. Y deberías obtener que la nueva pulvínulo de datos ‘TestDB‘ está creada.

SELECT Name from sys.Databases
GO

crear base de datos

A continuación, cambia la nueva pulvínulo de datos ‘TestDB‘ mediante la posterior consulta. Ahora deberías ver la salida«Cambiado el contexto de la pulvínulo de datos a‘TestDB’». Con esto en mente, ahora puedes crear una nueva tabla e insertar datos en ella.

USE TestDB
GO

Ejecuta la posterior consulta para crear una nueva tabla. En este ejemplo, crearás una nueva tabla ‘usuarios’ con algunos nociones adentro de id, nombre_apellido, email, y el last_login.

CREATE TABLE users (
    id INT PRIMARY KEY IDENTITY (1, 1),
    first_name VARCHAR (50) NOT NULL,
    last_name varchar(50) NOT NULL,
    email varchar(50),
    last_login DATE NOT NULL
);
GO

crear tabla

Ahora, ejecuta la posterior consulta para insertar nuevos datos en la tabla ‘usuarios‘. Puedes ver la salida como «(1 filas afectadas)«, lo que significa que realizas cambios en la tabla.

INSERT INTO users (first_name, last_name, email, last_login) VALUES ('Alice', 'Wonderland', '[email protected]', '20220901');
GO

insertar datos

A continuación, ejecuta la posterior consulta para recuperar los datos de la tabla ‘usuarios’. Deberías ver los datos que acabas de añadir.

SELECT * FROM users
GO

recuperar datos

Por zaguero, para duchar la instalación de tu entorno SQL Server, puedes ejecutar la posterior consulta para eliminar la pulvínulo de datos‘TestDB‘.

DROP DATABASE TestDB
GO

Ahora comprueba la repertorio de bases de datos disponibles en tu sistema mediante la posterior consulta. Verás que la pulvínulo de datos ‘TestDB‘ se ha eliminado de tu SQL Server.

SELECT Name from sys.Databases
GO

borrar base de datos

Conclusión

En esta prontuario, has instalado y configurado MS SQL Server en el sistema Rocky Linux. Todavía has aprendido a instalar y configurar SQL Tools en Rocky Linux para diligenciar MS SQL Server.

Al final, todavía aprendiste el uso central de las Herramientas SQL‘sqlcmd‘ para conectarte al Servidor SQL y aprendiste el funcionamiento central del Servidor SQL para crear una pulvínulo de datos, y una tabla, insertar datos, y todavía recuperar datos de la pulvínulo de datos.




Un proxy inverso es un servidor web que puede situarse delante de otro servidor web o de un servicio web. Puede acortar el tráfico saliente, ejecutar como equilibrador de carga, redirigir el tráfico y ofrecer protección. El servidor web Nginx puede utilizarse como servidor proxy delante de servidores tradicionales, pero a veces configurarlo puede ser tedioso y causar problemas si no se hace correctamente.

Nginx Proxy Manager es una aplicación que facilita la configuración de Nginx como servidor proxy, proporcionando una interfaz gráfica de beneficiario (GUI) con funciones como soporte SSL integrado mediante Let’s Encrypt, soporte para múltiples hosts, autenticación HTTP, listas de llegada y mandato de usuarios.

Este tutorial te enseñará a instalar el apoderado de proxy Nginx en un servidor Linux utilizando Docker. Cubriremos todas las distribuciones populares de Linux en un único tutorial.

Requisitos previos

  • Un servidor Linux que ejecute Ubuntu/Debian/CentOS/Alma Linux/Rocky Linux con un pequeño de 1 GB de RAM.
  • Un beneficiario no root con privilegios sudo.
  • Un nombre de dominio completo (FQDN) como npm.example.com que apunte al servidor.

Paso 1 – Configurar el cortafuegos

Cent OS/Rocky Linux/Alma Linux

Deberías tener instalado el cortafuegos Firewalld. Comprueba el estado del cortafuegos.

$ sudo firewall-cmd --state
running

Abre los puertos 80, 81 y 443.

$ sudo firewall-cmd --permanent --add-service=http
$ sudo firewall-cmd --permanent --add-service=https
$ sudo firewall-cmd --permanent --add-port=81/tcp

Recarga el cortafuegos para activar los cambios.

$ sudo firewall-cmd --reload

Ubuntu/Debian

Los sistemas Ubuntu y Debian utilizan ufw (Uncomplicated Firewall) por defecto.

Comprueba si el cortafuegos se está ejecutando.

$ sudo ufw status

Si lo está, abre los puertos 80, 81 y 443.

$ sudo ufw allow 80
$ sudo ufw allow 81
$ sudo ufw allow 443

Abre el puerto SSH si el cortafuegos no se está ejecutando.

$ sudo ufw allow "OpenSSH"

Habilita el cortafuegos si no se está ejecutando.

$ sudo ufw enable

Si se está ejecutando, vuelve a cargarlo para aplicar los cambios.

$ sudo ufw reload

Paso 2 – Instala Docker

Cent OS/Rocky Linux/Alma Linux

Ejecuta el futuro comando para instalar Docker.

$ sudo yum install -y yum-utils
$ sudo yum-config-manager 
    --add-repo 
    https://download.docker.com/linux/centos/docker-ce.repo
$ sudo yum install docker-ce docker-ce-cli containerd.io

Ubuntu

$ sudo apt install ca-certificates curl gnupg lsb-release
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
$ echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu 
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
$ sudo apt update
$ sudo apt install docker-ce docker-ce-cli containerd.io

Debian

$ sudo apt install ca-certificates curl gnupg lsb-release
$ curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
$ echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian 
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
$ sudo apt update
$ sudo apt install docker-ce docker-ce-cli containerd.io

Activa e inicia el servicio Docker.

$ sudo systemctl start docker --now

Añade tu nombre de beneficiario al género Docker.

$ sudo usermod -aG docker $USER

Sal del sistema y vuelve a entrar para aplicar el cambio.

Paso 3 – Instala Docker Compose

Descarga e instala el binario de Docker Compose.

$ sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/almacén/bin/docker-compose

Aplica el permiso de ejecutable al binario.

$ sudo chmod +x /usr/almacén/bin/docker-compose

Paso 4 – Crear archivo Docker Compose

Crea un directorio para el apoderado de proxy Nginx.

$ mkdir ~/nginx-proxy

Cambia al directorio.

$ cd ~/nginx-proxy

Crea directorios para los datos de beneficiario y los certificados SSL.

$ mkdir {data,letsencrypt}

Crea y abre el archivo docker-compose.yml para editarlo.

$ nano docker-compose.yml

Pega en él el futuro código.

version: "3"
services:
  npm-app:
    image: 'jc21/nginx-proxy-manager:latest'
    container_name: npm-app
    restart: unless-stopped
    ports:
      - '80:80' # Public HTTP Port
      - '443:443' # Public HTTPS Port
      - '81:81' # Admin Web Port
      # Add any other Stream port you want to expose
      # - '21:21' # FTP
    environment:
      DB_MYSQL_HOST: "npm-db"
      DB_MYSQL_PORT: 3306
      DB_MYSQL_USER: "npm"
      DB_MYSQL_PASSWORD: "npm"
      DB_MYSQL_NAME: "npm"
      # Uncomment the line below if IPv6 is not enabled on your host
      # DISABLE_IPV6: 'true'
    volumes:
      - ./data:/data
      - ./letsencrypt:/etc/letsencrypt
    depends_on:
      - npm-db
    networks:
      - npm-nw
      - npm-internal

  npm-db:
    image: 'mariadb:latest'
    container_name: npm-db
    restart: unless-stopped
    environment:
      MYSQL_ROOT_PASSWORD: 'npm'
      MYSQL_DATABASE: 'npm'
      MYSQL_USER: 'npm'
      MYSQL_PASSWORD: 'npm'
    volumes:
      - ./data/mysql:/var/lib/mysql
    networks:
      - npm-internal

networks:
  npm-internal:
  npm-nw:
    external: true

Tutela el archivo pulsando Ctrl + X e introduciendo Y cuando se te pida.

Repasemos el archivo. La primera parte del archivo es donde importamos la imagen del apoderado de proxy Nginx y establecemos algunas variables de entorno en forma de credenciales de colchoneta de datos. Asimismo exponemos los puertos 80, 81 y 443 al servidor para su llegada. Puedes exponer más puertos, como el 21, para el llegada FTP. Puedes desactivar el soporte IPV6 descomentando la cuerda DISABLE_IPV6: 'true'. Hemos mapeado varios directorios de nuestro host al Docker para el almacenamiento de datos y SQL.

Aquí estamos utilizando dos redes. Una es la red interna npm-internal para conectar el apoderado proxy y la colchoneta de datos. Ésta es opcional, ya que se crea automáticamente. Pero aquí, lo estamos haciendo manualmente dándole un nombre de nuestra opción.

Hemos añadido una red externa al contenedor del apoderado de proxy citación npm-nw. Esta red es esencial porque puedes utilizarla para conectar el apoderado de proxy a cualquier otro contenedor Docker que instales. Utilizar una red te permitirá conectar directamente cualquier contenedor sin aprieto de exponer sus puertos al servidor.

Paso 5 – Ejecuta el Apoderado de Proxy Nginx

Antiguamente de divulgar el contenedor Docker, necesitamos crear la red externa npm-nw. Las redes internas se crean automáticamente. Ejecuta el futuro comando para crear la red externa.

$ docker network create npm-nw

Venablo el contenedor Docker utilizando el futuro comando.

$ docker-compose up -d

Comprueba el estado de los contenedores.

$ docker ps
CONTAINER ID   IMAGE                             COMMAND                  CREATED              STATUS              PORTS                                                                                  NAMES
c91ca0ddca97   jc21/nginx-proxy-manager:latest   "/init"                  About a minute ago   Up About a minute   0.0.0.0:80-81->80-81/tcp, :::80-81->80-81/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp   npm-app
1738d71b95da   mariadb:latest                    "docker-entrypoint.s…"   About a minute ago   Up About a minute   3306/tcp                                                                               npm-db

Paso 6 – Accede al Apoderado de Proxy Nginx

Ahora puedes lograr a tu apoderado de proxy Nginx a través de la URL http://yourserverIP:81. Deberías obtener la futuro pantalla de llegada.

Pantalla de inicio de sesión del Administrador de Proxy Nginx

Introduce las siguientes credenciales predeterminadas para iniciar sesión.

Dirección de correo electrónico: [email protected] Contraseña: changeme

A continuación, se te pedirá inmediatamente que establezcas un nombre y una dirección de correo electrónico.

Nginx Proxy Manager Editar Usuario Popup

Haz clic en el clavija Asegurar, y se te pedirá que establezcas una nueva contraseña.

Ventana emergente "Establecer contraseña" del Administrador de proxy de Nginx

Vuelve a pulsar el clavija Asegurar y ya podrás iniciar a utilizar la aplicación.

Panel del Administrador de Proxy Nginx

Si abres la URL http://yourserverIP en tu navegador, accederás a una página predeterminada que el apoderado de proxy ha configurado.

Sitio predeterminado del gestor de proxy Nginx

Paso 7 – Configurar el Nombre de Dominio y SSL para el Apoderado de Proxy Nginx

Vamos a configurar un nombre de dominio para lograr al Apoderado de Proxy Nginx. Este paso es opcional pero es útil si quieres poner la aplicación detrás de SSL.

Haz clic en Anfitriones >> Anfitriones Proxy en el menú del panel de control para aclarar la página Anfitriones Proxy. Desde ahí, haz clic en el clavija Añadir Host Proxy para continuar.

Pantalla Nuevo Host Proxy del Gestor de Proxy Nginx

Añade el nombre FQDN (npm.example.com) y haz clic sobre él. Introduce la dirección IP de tu servidor y 81 como puerto de reenvío.

Cambia a la pestaña SSL.

Nginx Proxy Manager Configurar SSL

Selecciona Solicitar un nuevo certificado SSL en el menú desplegable. Selecciona las opciones Forzar SSL y Soporte HTTP/2. Si quieres activar HSTS, igualmente puedes hacerlo. Si tienes tu dominio configurado a través de Cloudflare, no habilites la opción Forzar SSL, de lo contrario, te quedarás atrapado en un onda de redireccionamiento.

Introduce tu dirección de correo electrónico, acepta las Condiciones del Servicio (CDS) de Let’s Encrypt y haz clic en el clavija Asegurar para terminar.

Lista de hosts proxy del gestor de proxy Nginx

Tu dominio debería estar activo y funcionando. Prueba a aclarar https://npm.example.com en tu navegador, y deberías obtener la pantalla de inicio de sesión de Nginx Proxy Manager.

Puedes hacerlo de forma similar para la página de destino predeterminada y asignarla a un nombre de dominio como https://example.com. Sólo tienes que cambiar el puerto de 81 a 81 mientras configuras el host proxy.

Paso 8 – Utilizar el Apoderado de Proxy Nginx con otra aplicación web Docker

Ahora que hemos instalado el apoderado de proxy, es hora de darle algún uso. Lo primero que haremos será utilizarlo para penetrar otra aplicación web Docker. Para ello, instalaremos el blog Ghost. Si quieres conocer más, consulta nuestro tutorial sobre la instalación de Ghost utilizando Docker en un servidor Ubuntu.

Crea otro directorio para tu blog de Ghost.

$ mkdir ~/ghost

Cambia al directorio de Ghost.

$ cd ~/ghost

Crea dos directorios para el contenido y la colchoneta de datos.

$ mkdir {content,mysql}

Aunque utilices la misma imagen MySQL, debes apoyar los datos y sus contenedores separados de los del apoderado Proxy. Esto te ayudará a aislar cualquier problema que puedas encontrarte y te permitirá mover las cosas en caso de que lo necesites.

Crea y abre el archivo Docker compose para editarlo.

$ nano docker-compose.yml

Pega el futuro código. Sustituye example.com por el nombre de dominio existente de tu blog Ghost. Introduce los datos SMTP si quieres acoger correos electrónicos. Puedes eliminarlos si no los necesitas.

version: '3.3'
services:

  ghost-app:
    image: ghost:latest
    container_name: ghost-app
    restart: always
    depends_on:
      - ghost-db
    environment:
      url: https://ghost.example.com
      database__client: mysql
      database__connection__host: ghost-db
      database__connection__user: ghost
      database__connection__password: ghostdbpass
      database__connection__database: ghostdb
      mail__transport: SMTP
      mail__options__host: {Your Mail Service host}
      mail__options__port: {Your Mail Service port}
      mail__options__secureConnection: {true/false}
      mail__options__service: {Your Mail Service}
      mail__options__auth__user: {Your User Name}
      mail__options__auth__pass: {Your Password}
    volumes:
      - /home/<username>/ghost/content:/var/lib/ghost/content
    networks:
      - npm-nw
      - ghost-network

  ghost-db:
    image: mariadb:latest
    container_name: ghost-db
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: your_mysql_root_password
      MYSQL_USER: ghost
      MYSQL_PASSWORD: ghostdbpass
      MYSQL_DATABASE: ghostdb
    volumes:
      - /home/<username>/ghost/mysql:/var/lib/mysql
    networks:
      - ghost-network

networks:
  ghost-network:
  npm-nw: 
    external: true

Tutela el archivo pulsando Ctrl + X e introduciendo Y cuando se te pida.

Como puedes ver, hemos conectado el contenedor Ghost con el apoderado proxy Nginx utilizando la red externa npm-nw. De esta forma, no estamos exponiendo los puertos del Ghost al sistema. Asimismo hemos utilizado una red interna ghost-network para conectar nuestra aplicación Ghost y el contenedor de colchoneta de datos correspondiente.

Inicia el contenedor.

$ docker-compose up -d

Configurar Ghost en el Apoderado de Proxy Nginx

Ahora tenemos que configurar el proxy inverso para nuestra instalación de Ghost. Abre el Apoderado de Proxy Nginx en tu navegador, ve a Panel >> Hosts >> Proxy Host, y añade un nuevo Proxy Host.

Ghost Blog Nginx Proxy Manager Configurar

Añade el nombre de dominio que elegiste para tu blog de Ghost. Para el valía Hostname/IP, introduce el nombre de tu contenedor. En este caso, sería ghost-app. No podemos añadir aquí la dirección IP porque no hemos expuesto el puerto de Ghost al servidor, y el proxy Nginx no podrá asistir a Ghost a través de la IP. Por lo tanto, utilizamos el nombre del contenedor, al que NPM puede lograr utilizando la red de Docker npm-nw, que hemos creado. Utiliza 2368 como puerto, el puerto por defecto utilizado por el Blog de Ghost. Comprueba las demás opciones como se muestra en la captura de pantalla susodicho.

A continuación, cambia a la pestaña SSL y crea un nuevo certificado SSL siguiendo el paso 6. Como vas a subir contenido a tu blog de Ghost, sería bueno establecer un tamaño mayor de carga para tus subidas.

Felizmente, NPM te permite añadir configuraciones personalizadas. Cambia a la pestaña Innovador e introduce client_max_body_size 50m; en la casilla.

Configuración avanzada de Ghost Blog NPM

Haz clic en el clavija Asegurar para terminar de añadir el host proxy. Deberías poder lograr a tu blog de Ghost a través de la URL https://ghost.exampl.com

Blog Fantasma Inicio

Paso 9 – Utilizar Nginx Proxy Manager como servicio de redirección

Veamos cómo puedes utilizar NPM para redirigir un dominio a otro fácilmente. Para ello, reconocimiento Panel de Control >> Anfitriones >> Anfitriones de Redirección. Desde allí, haz clic en el clavija Añadir Host de Redireccionamiento para iniciar.

Host de redirección del gestor de proxy Nginx

Introduce el nombre del dominio que quieres redireccionar. E introduce el dominio de reenvío. El dominio de reenvío ya debería estar configurado. Deja el esquema como coche. Dependiendo de tus evacuación, puedes designar http o https. Selecciona el Código HTTP correcto y marca las opciones Conservar ruta y Cerrar exploits comunes. Si utilizas un esquema coche o https, asegúrate de ocurrir seleccionado o creado un certificado SSL utilizando NPM. Haz clic en Asegurar para terminar de añadir tu host de redirección.

Tu dominio example.com debería iniciar a redirigirse a blog.example.com.

Otros usos de Nginx Proxy Manager

Hay otras dos formas en las que puedes utilizar el Apoderado de Proxy Nginx. Puedes utilizarlo como host 404, lo que significa que puedes utilizar un dominio como página de destino para mostrar a los motores de búsqueda que las páginas del dominio no existen. El paso incluye simplemente introducir un dominio y configurar SSL para él. Asimismo puedes exprimir para rastrear los registros del nombre de dominio y ver el tráfico de relato.

La otra función es utilizar NPM como host de flujo. Puedes utilizar esta función para reenviar puertos TCP/UDP a otro ordenador de la red. Esto es útil si alojas servidores de juegos. Lo único que requiere es que introduzcas el puerto de entrada, el dominio o dirección IP de reenvío, el puerto de reenvío y selecciones el tipo de puerto.

Nginx Proxy Manager Nuevo Stream Host Popup

Utilizar el Apoderado de Proxy Nginx para penetrar un sitio web pasmado

El Apoderado de Proxy Nginx igualmente puede penetrar sitios web estáticos o dinámicos sencillos. Para ello, añade un nuevo host proxy y elige 127.0.0.1 como dominio de reenvío y 80 como puerto.

Gestor de proxy Nginx Anfitrión de sitio web estático

En la pestaña Innovador, introduce la configuración especificando el directorio raíz. Asegúrate de que el directorio raíz del sitio está montado en la configuración original de Docker compose. Aquí estamos utilizando el directorio /data/static para penetrar nuestro sitio web pasmado.

Configuración avanzada del gestor de proxy Nginx Sitio estático

Haz clic en Asegurar para terminar, y tu sitio debería ser accesible. De forma similar, puedes penetrar cualquier tipo de sitio utilizando el apoderado de proxy.

Página de demostración del sitio estático

Paso 10 – Funciones Misceláneas

Utiliza la función de control de llegada del Apoderado de Proxy Nginx

Puedes utilizar la función Listas de Entrada de NPM para habilitar la autenticación HTTP o cerrar rangos de IP. Abre NPM y reconocimiento la página Panel >> Listas de Entrada.

Haz clic en el clavija Añadir Cinta de Entrada para iniciar.

Nginx Proxy Manager Nueva Lista de Acceso

Puedes asignar un nombre a la configuración de tu Cinta de Entrada (ACL). La pestaña Satisfacer Cualquiera, si está marcada, permitirá el llegada si el cliente cumple cualquiera de las condiciones especificadas. Si un cliente pasa la autenticación HTTP pero puede dirimir el llegada basado en IP, se le permitirá. Pero si la opción Satisfacer Cualquiera no está marcada, el cliente tendrá que cumplir todas las condiciones.

La opción Acontecer autenticación al anfitri ón reenviará la autenticación al servidor huésped.

A continuación, pasa a la pestaña Autorización. Aquí puedes crear un nombre de beneficiario y una contraseña para el método de autenticación HTTP. Para añadir más de un beneficiario, haz clic en el clavija Añadir. Sólo puedes añadir hasta 5 usuarios. Hay un error con el clavija Añadir, así que utiliza primero el clavija y luego rellena los detalles. Si rellenas los detalles y pulsas el clavija más tarde para añadir otro beneficiario, se borrarán los datos del beneficiario susodicho.

Configuración de la autorización del gestor de proxy de Nginx

Cambia a la pestaña Entrada. Aquí puedes establecer a qué direcciones IP se les debe dar o rechazar el llegada.

Pestaña Acceso IP del Gestor de Proxy Nginx

Haz clic en Asegurar para terminar.

Para utilizar esta inventario de Entrada, debes seleccionarla cuando añadas tu host proxy. Como en el ejemplo para Ghost Blog de debajo, hemos seleccionado nuestra Cinta de llegada.

Nginx Proxy Manager Soporte de Lista de Acceso Proxy

Habilitar el soporte para más nombres de dominio

A medida que crece el número de hosts y dominios, tu Nginx puede quedarse sin espacio hash o tener problemas de memoria. Podemos añadir una configuración personalizada que se aplicará a todos los hosts para solucionar este problema.

Para ello, crea el directorio custom interiormente de ~/nginx-proxy/data/nginx.

$ sudo mkdir ~/nginx-proxy/data/nginx/custom

Crea y abre el archivo http.conf interiormente de este directorio.

$ sudo nano ~/nginx-proxy/data/nginx/custom/http.conf

Pega en él las siguientes líneas.

proxy_headers_hash_max_size 1024;
proxy_headers_hash_bucket_size 128;

Tutela el archivo pulsando Ctrl + X e introduciendo Y cuando se te solicite.

Nginx debería aceptar automáticamente estos títulos. Si no lo hace, puedes reiniciar el contenedor NPM utilizando el futuro comando.

$ docker restart npm-app

Redirigir la página de destino predeterminada

En el paso 6, verás la página por defecto cuando escribas la URL http://<yourserverIP>. Si quieres cambiarla, es posible hacerlo. Para ello, reconocimiento la Página de Configuración. Haz clic en los tres puntos de la derecha y pulsa el clavija Editar.

Nginx Proxy Manager Página de inicio Editar

Puedes configurar la página de destino para que actúe como página 404, página de redirección o añadirle HTML personalizado mediante la opción Página personalizada. Si seleccionas Redirigir, tendrás que especificar la URL de destino.

Configuración predeterminada del sitio del Gestor de Proxy Nginx

Este es el HTML personalizado que hemos utilizado para nuestro propósito.

<!doctype html>
<html>
  <head>
    <title>Nothing Here</title>
    <meta charset="utf-8"/>
    <meta name="robots" content="noindex"/>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <style>
      body { 
          text-align: center; 
          padding: 20px; 
          font: 20px Helvetica, sans-serif; 
          color: #333; 
        }
      @media (min-width: 768px){
          body{ padding-top: 150px; 
        }
      }
      h1 { 
          font-size: 50px; 
        }
      article { 
          display: block; 
          text-align: left; 
          max-width: 650px; 
          margin: 0 coche; 
        }
    </style>
  </head>
  <body>
    <article>
        <h1>Oops!</h1>
        <div>
            <p>Sorry for the inconvenience but you are not supposed to be here. You won't get anything here. This page was set for HowtoForge Nginx Proxy Manager Guide.  Maybe, someday it will show something.</p>
        </div>
    </article>
  </body>
</html>

Haz clic en Asegurar para terminar. Tu página de destino debería cambiar a poco parecido a lo futuro.

Página de destino personalizada del Gestor de Proxy Nginx

Paso 11 – Modernizar Nginx Proxy Manager

Para refrescar NPM, primero, detén los contenedores.

$ cd ~/nginx-proxy
$ docker-compose down --remove-orphans

Extrae las últimas imágenes.

$ docker-compose pull

Arranca de nuevo los contenedores.

$ docker-compose up -d

Conclusión

Con esto concluye nuestro tutorial, en el que has instalado Nginx Proxy Manager y has aprendido a utilizarlo para añadir un host proxy para otro contenedor Docker, utilizarlo como servicio de redirección y controlar el llegada mediante él. Si tienes alguna pregunta, publícala en los comentarios a continuación.




Docker Compose es una útil que puede utilizarse para detallar y ejecutar varios contenedores como un único servicio. Con Docker Compose, puedes enlazar varios contenedores y desplegar una aplicación desde un único comando. Se utiliza principalmente en el entorno de avance, pruebas y staging. Docker Compose utiliza un archivo YAML para detallar una pila compleja en un archivo y ejecutarla con un solo comando.

En este tutorial, te mostraremos cómo instalar y utilizar Docker Compose en CentOS 8.

Requisitos

  • Un servidor que ejecute CentOS 8.
  • Una contraseña de root configurada en el servidor.

Instalar Docker

Antiguamente de aparecer, asegúrate de que tienes Docker instalado en tu servidor. Si no está instalado, tendrás que añadir el repositorio Docker-CE a tu sistema. Puedes añadirlo con el subsiguiente comando:

dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo

Una vez añadido el repositorio, instala la última traducción de docker con el subsiguiente comando:

dnf install docker-ce --nobest -y
systemctl start docker
 systemctl enable docker

Puedes probar la traducción de docker con el subsiguiente comando:

docker --version

Deberías ver la subsiguiente salida:

Docker version 19.03.5, build 633a0ea

Instalar Docker Compose

Por defecto, Docker Compose no está habitable en el repositorio por defecto de CentOS 8. Así que tendrás que descargarlo del repositorio Git.

En primer sitio, instala el comando curl con el subsiguiente comando:

dnf install curl -y

A continuación, descarga la última traducción de Docker Compose desde el reposiotrio Git utilizando curl como se muestra a continuación:

curl -L https://github.com/docker/compose/releases/download/1.25.0/docker-compose-`uname -s`-`uname -m` -o /usr/circunscrito/bin/docker-compose

Una vez finalizada la descarga, haz ejecutable el archivo binario descargado con el subsiguiente comando:

chmod +x /usr/circunscrito/bin/docker-compose

A continuación, puedes probar la traducción de Compose utilizando el subsiguiente comando:

docker-compose --version

Deberías ver la subsiguiente salida:

docker-compose version 1.25.0, build 0a186604

Puedes ver todas las opciones disponibles con docker-compose utilizando el subsiguiente comando:

docker-compose --help

Deberías ver la subsiguiente página:

Opciones de la línea de comandos de Docker Compose

Desplegar Drupal con Docker Compose

En esta sección, te mostraremos cómo instalar Drupal utilizando Docker Compose.

En primer sitio, crea un directorio para tu drupal con el subsiguiente comando:

mkdir drupal

A continuación, crea un archivo drupal.yaml adentro del directorio drupal:

nano drupal/docker-compose.yaml

Añade el subsiguiente contenido:

version: '3.3'

services:
  drupal:
    image: drupal:latest
    ports:
      - 80:80
    volumes:
      - drupal_modules:/var/www/html/modules
      - drupal_profiles:/var/www/html/profiles
      - drupal_themes:/var/www/html/themes
      - drupal_sites:/var/www/html/sites
    restart: always

  postgres:
    image: postgres:10
    environment:
      POSTGRES_PASSWORD: your_postgres_password
    volumes:
        - db_data:/var/lib/postgresql/data
    restart: always

volumes:
  drupal_modules:
  drupal_profiles:
  drupal_themes:
  drupal_sites:
  db_data:

Tutela y cierra el archivo cuando hayas terminado. A continuación, cambia el directorio a drupal e inicia tu contenedor Docker con el subsiguiente comando:

cd drupal
 docker-compose up -d

El comando inicial descargará y ejecutará los contenedores drupal y postgresql.

Puedes comprobar tus contenedores en ejecución con el subsiguiente comando:

docker-compose ps

Deberías ver la subsiguiente salida:

      Name                     Command               State         Ports       
-------------------------------------------------------------------------------
drupal_drupal_1     docker-php-entrypoint apac ...   Up      0.0.0.0:80->80/tcp
drupal_postgres_1   docker-entrypoint.sh postgres    Up      5432/tcp 

Ahora, puedes pasarse la URL http://your-server-ip para obtener al asistente de instalación web de Drupal, como se muestra a continuación:

Elige lengua

Trabajar con Docker Compose

En esta sección, te mostraremos cómo utilizar el comando docker-compose.

Para detener los servicios Docker Compose ejecuta el subsiguiente comando adentro del directorio drupal:

docker-compose stop

Deberías ver la subsiguiente salida:

Stopping drupal_drupal_1   ... done
Stopping drupal_postgres_1 ... done

Para iniciar los servicios Docker Compose ejecuta el subsiguiente comando adentro del directorio drupal:

docker-compose start

Para ver el registro de contenedores ejecuta el subsiguiente comando:

docker-compose logs

Para ver los logs de un contenedor concreto ejecuta el subsiguiente comando:

docker-compose logs drupal

Para ver el archivo de configuración ejecuta el subsiguiente comando:

docker-compose config

Para pausar y despausar los contenedores ejecuta el subsiguiente comando:

docker-compose pause

Salida:

Pausing drupal_postgres_1 ... done
Pausing drupal_drupal_1   ... done
docker-compose unpause

Salida:

Unpausing drupal_drupal_1   ... done
Unpausing drupal_postgres_1 ... done

Para eliminar todos los contenedores ejecuta el subsiguiente comando:

docker-compose down

Deberías ver la subsiguiente salida:

Stopping drupal_drupal_1   ... done
Stopping drupal_postgres_1 ... done
Removing drupal_drupal_1   ... done
Removing drupal_postgres_1 ... done
Removing network drupal_default

Asimismo puedes eliminar los volúmenes de datos con el subsiguiente comando:

docker-compose down --volumes

Deberías ver la subsiguiente salida:

Removing network drupal_default
WARNING: Network drupal_default not found.
Removing volume drupal_drupal_modules
Removing volume drupal_drupal_profiles
Removing volume drupal_drupal_themes
Removing volume drupal_drupal_sites
Removing volume drupal_db_data

Conclusión

En el tutorial inicial, hemos aprendido a instalar y utilizar Docker Compose en CentOS 8. Espero que tengas suficientes conocimientos sobre cómo utilizar el comando Docker Compose para encargar los contenedores Docker.




NoMachine es un software de escritorio remoto de balde y de código despejado que se utiliza para el comunicación remoto, la compartición de escritorio, el escritorio potencial y la transferencia de archivos entre ordenadores. Utiliza el protocolo NX que proporciona una velocidad almacén con bajo satisfecho de manada. Se puede instalar en muchos sistemas operativos, como Linux, Windows, Mac OS X y Android. Si buscas una decisión de escritorio remoto, NoMachine es la mejor opción para ti.

En este tutorial, te mostraremos cómo instalar y utilizar NoMachine en CentOS 8.

Requisitos previos

  • Un sistema de escritorio que ejecute CentOS 8.
  • Una contraseña de root configurada el servidor.

Instalar NoMachine

Por defecto, NoMachine no está incluido en el repositorio por defecto de CentOS. Así que tendrás que descargarlo desde su sitio web oficial.

Puedes descargarlo con el próximo comando:

wget https://download.nomachine.com/download/7.1/Linux/nomachine_7.1.3_1_x86_64.rpm

Una vez completada la descarga, instala el archivo descargado con el próximo comando:

dnf install nomachine_7.1.3_1_x86_64.rpm

Una vez completada la instalación, deberías obtener la próximo salida:

  PulseAudio Backend

  The NoMachine  setup procedure  could not  detect  your  PulseAudio
  installation:  either  PulseAudio is not  installed  on your system
  or it was  installed  in a non-standard path.  If PulseAudio is not
  available, NoMachine audio support will try to rely on ALSA device.
  Please note  that you can enable  PulseAudio  support  at any time;
  to do this  make sure that you have PulseAudio installed, then run:

    /usr/NX/scripts/setup/nxnode --audiosetup 

  to specify the location of the PulseAudio configuration files.
NX> 700 Installing: nxserver version: 7.1.3.
NX> 700 Using installation profile: Red Hat.
NX> 700 Install log is: /usr/NX/var/log/nxinstall.log.
NX> 700 Creating configuration in: /usr/NX/etc/server.cfg.
NX> 700 Server install completed with warnings.
NX> 700 Please review the install log for details.
NX> 700 Install completed at: Tue Feb 16 05:43:49 2021.
NX> 700 NoMachine was configured to run the following services:
NX> 700 NX service on port: 4000

  Verifying        : nomachine-7.1.3-1.x86_64                                                                                              1/1 

Installed:
  nomachine-7.1.3-1.x86_64                                                                                                                     

Complete!

Configurar el cortafuegos

A continuación, tendrás que permitir el puerto TCP 4000 y el puerto UDP 4011-4999 a través de firewalld. Puedes permitirlos con el próximo comando:

firewall-cmd --add-port=4000/tcp --permanent
firewall-cmd --add-port=4011-4999/udp --permanent

A continuación, recarga el firewalld para aplicar los cambios.

firewall-cmd --reload

Trabajar con NoMachine

Posteriormente de instalar NoMachine, puedes lanzarlo desde la mostrador de búsqueda como se muestra a continuación:

Escritorio remoto NoMachine

Haz clic en NoMachine para editar la aplicación como se muestra a continuación:

Cliente NoMachine

Haz clic en el llamador Aceptar. Deberías ver la próximo pantalla:

Crear conexión

Ahora, haz clic en el llamador Añadir para crear una nueva conexión. Deberías ver la próximo pantalla:

Dirección remota

Proporciona el nombre de host de tu NoMachine remoto, la dirección IP, el puerto, el protocolo y haz clic en el llamador Conectar. Se te pedirá que proporciones el nombre de becario y la contraseña del ordenador remoto, como se muestra a continuación:

Introduce el nombre de usuario y la contraseña

Proporciona el nombre de becario, la contraseña y haz clic en el llamador Conectar. Una vez conectado, deberías ver la próximo pantalla:

Teclas de acceso rápido

Cambia la configuración de tu pantalla y haz clic en el llamador Aceptar. Deberías ver la próximo pantalla:

Escala el escritorio remoto

Selecciona la resolución de tu pantalla y haz clic en el llamador Aceptar. Una vez conectado, deberías ver la próximo pantalla:

Se ha establecido una conexión de escritorio remoto

Conclusión

En la tutela antecedente, has aprendido a instalar y utilizar el software de escritorio remoto NoMachine en CentOS 8. Ahora puedes resolver fácilmente varios sistemas remotos. No dudes en preguntarme si tienes alguna duda.