Crea tu propio repositorio de paquetes con Poudriere

Desde la versión 9.2, FreeBSD ha introducido una nueva herramienta para reemplazar el antiguo pkg _ * - comandos - pkg, también conocido como pkgng. Es muy similar a la de Debian apto Fedora, yumpero tiene algunas características muy interesantes. Una de ellas es la posibilidad de usar fácilmente su propio repositorio privado de paquetes.

¿Por qué querrías hacer eso? Los repositorios oficiales de paquetes están construidos a partir del árbol de puertos de FreeBSD con un conjunto muy limitado de opciones. Por ejemplo, el paquete oficial para PHP carece de soporte para MySQL. Otra razón podría ser que desee tener dos repositorios, uno con X11 habilitado para su escritorio y otro con X11 deshabilitado para sus servidores. Hay muchas opciones y posibilidades, y este tutorial le mostrará cómo construir su propio repositorio con Poudriere , una herramienta para paquetes de construcción masiva.

Supongo que tiene un VPS nuevo con FreeBSD 10 x64 instalado. En primer lugar, necesita el árbol de puertos en su sistema:

cd /usr
portsnap fetch extract

Luego, debe instalar Poudriere desde la fuente (¡Las opciones predeterminadas están bien!):

cd /usr/ports/ports-mgmt/poudriere
make install clean

A continuación, cree un archivo de configuración básica:

cp /usr/local/etc/poudriere.conf.sample /usr/local/etc/poudriere.conf

... y edítelo según sus necesidades. El siguiente es un buen comienzo:

FREEBSD_HOST=http://ftp.freebsd.org
RESOLV_CONF=/etc/resolv.conf
BASEFS=/usr/local/poudriere
POUDRIERE_DATA=$/data
USE_PORTLINT=no
USE_TMPFS=yes
DISTFILES_CACHE=/usr/ports/distfiles
CHECK_CHANGED_DEPS=yes
# Edit this according to your VPS' CPU.
PARALLEL_JOBS=1
NOLINUX=yes

En lugar de usar el portstree regular de su sistema, Poudriere usa su propia copia. Debe obtenerlo con el siguiente comando:

poudriere ports -c

Ahora, cree una cárcel para que el constructor se ejecute en:

poudriere jail -c -j testjail -v 10.0-RELEASE -a amd64

Antes de que pueda comenzar a construir paquetes, tendrá que decirle a Poudriere qué debe construir. Abra su editor de texto favorito y agregue algunos paquetes:

www/firefox
im/pidgin
sysutils/tmux
editors/vim

... y guarde el archivo en /usr/local/etc/buildlist. Si no desea las opciones predeterminadas, puede configurar las opciones para cada paquete en ese archivo. Esto se realiza emitiendo el siguiente comando:

poudriere options -cf /usr/local/etc/buildlist

De lo contrario, puede comenzar a construir:

poudriere bulk -f /usr/local/etc/buildlist -j testjail

La cantidad de tiempo que lleva esta operación variará según la velocidad de la CPU de su VPS. Una vez finalizado el proceso, se pueden encontrar sus paquetes nuevos, ordenados por build-jail, en /usr/local/poudriere/data/packages/.

Ahora, necesita un servidor web para servir esos paquetes en sus otras máquinas. Elegí Nginx porque es eficiente y liviano. Instálelo a través de los puertos (¡Las opciones predeterminadas están bien!):

cd /usr/ports/www/nginx
make install clean

Una vez finalizado el proceso de instalación, debe configurar Nginx para que sirva el directorio de paquetes. Para hacerlo, edite /usr/local/etc/nginx/nginx.confcon su editor de texto favorito:

server {
    listen       80;
    server_name  localhost;
    root /usr/local/poudriere/data/packages/testjail-default;
    location / {
            autoindex on;
    }
}

Finalmente, asegúrese de que el servidor web se inicie en el arranque:

echo "nginx_enable=YES" >> /etc/rc.conf

... e inicie el servidor:

/usr/local/etc/rc.d/nginx start

Las posibilidades con Poudriere son enormes. Puede obtener más información sobre Poudriere leyendo la entrada de la página de manual. Si planea usar una configuración como esta en un entorno de producción, le conviene leer también sobre la firma de paquetes y considerar la posibilidad de asegurar la conexión a su servidor web con TLS. Pero por ahora, ¡estás listo para rockear!

Para activar el repositorio en el cliente, ejecute estos comandos en la máquina del cliente:

mkdir -p /usr/local/etc/repos
vi /usr/local/etc/repos/myrepo.conf

Rellene myrepo.confcon el siguiente contenido. Puede usar cualquier nombre para este archivo, siempre que tenga el .confsufijo.

poudriere: {
  url: "http://yoururl"
  mirror_type: "http",
  enabled: yes
}

A continuación, actualice la base de datos del paquete con el comando:

pkg update

¡Ahora puede instalar paquetes desde su nuevo repositorio!

Dejar un comentario

ZPanel y Sentora en CentOS 6 x64

ZPanel y Sentora en CentOS 6 x64

ZPanel, un panel de control de alojamiento web popular, se bifurcó en 2014 a un nuevo proyecto llamado Sentora. Aprende a instalar Sentora en tu servidor con este tutorial.

Cómo instalar Vtiger CRM Open Source Edition en CentOS 7

Cómo instalar Vtiger CRM Open Source Edition en CentOS 7

Aprende cómo instalar Vtiger CRM, una aplicación de gestión de relaciones con el cliente, en CentOS 7 para aumentar tus ventas y mejorar el servicio al cliente.

Cómo instalar el servidor Counter-Strike 1.6 en Linux

Cómo instalar el servidor Counter-Strike 1.6 en Linux

Esta guía completa le mostrará cómo configurar un servidor Counter-Strike 1.6 en Linux, optimizando el rendimiento y la seguridad para el mejor juego. Aprende los pasos más recientes aquí.

¿Puede la IA luchar con un número cada vez mayor de ataques de ransomware?

¿Puede la IA luchar con un número cada vez mayor de ataques de ransomware?

Los ataques de ransomware van en aumento, pero ¿puede la IA ayudar a lidiar con el último virus informático? ¿Es la IA la respuesta? Lea aquí, sepa que la IA es una bendición o una perdición

ReactOS: ¿Es este el futuro de Windows?

ReactOS: ¿Es este el futuro de Windows?

ReactOS, un sistema operativo de código abierto y gratuito, está aquí con la última versión. ¿Puede satisfacer las necesidades de los usuarios de Windows de hoy en día y acabar con Microsoft? Averigüemos más sobre este estilo antiguo, pero una experiencia de sistema operativo más nueva.

Manténgase conectado a través de la aplicación de escritorio WhatsApp 24 * 7

Manténgase conectado a través de la aplicación de escritorio WhatsApp 24 * 7

Whatsapp finalmente lanzó la aplicación de escritorio para usuarios de Mac y Windows. Ahora puede acceder a Whatsapp desde Windows o Mac fácilmente. Disponible para Windows 8+ y Mac OS 10.9+

¿Cómo puede la IA llevar la automatización de procesos al siguiente nivel?

¿Cómo puede la IA llevar la automatización de procesos al siguiente nivel?

Lea esto para saber cómo la Inteligencia Artificial se está volviendo popular entre las empresas de pequeña escala y cómo está aumentando las probabilidades de hacerlas crecer y dar ventaja a sus competidores.

La actualización complementaria de macOS Catalina 10.15.4 está causando más problemas que resolver

La actualización complementaria de macOS Catalina 10.15.4 está causando más problemas que resolver

Recientemente, Apple lanzó macOS Catalina 10.15.4, una actualización complementaria para solucionar problemas, pero parece que la actualización está causando más problemas que conducen al bloqueo de las máquinas Mac. Lee este artículo para obtener más información

13 Herramientas comerciales de extracción de datos de Big Data

13 Herramientas comerciales de extracción de datos de Big Data

13 Herramientas comerciales de extracción de datos de Big Data

¿Qué es un sistema de archivos de diario y cómo funciona?

¿Qué es un sistema de archivos de diario y cómo funciona?

Nuestra computadora almacena todos los datos de una manera organizada conocida como sistema de archivos de diario. Es un método eficiente que permite a la computadora buscar y mostrar archivos tan pronto como presiona buscar.