


Comment créer un entrepôt d'images Docker sûr et fiable sur un serveur Linux ?
Comment créer un entrepôt d'images Docker sûr et fiable sur un serveur Linux ?
Avec le développement rapide de la technologie des conteneurs, Docker est devenu un outil courant pour créer et gérer des applications conteneurisées. Cependant, dans les applications pratiques, la manière d’établir un entrepôt d’images Docker sûr et fiable est une question importante. Cet article explique comment établir un entrepôt d'images Docker sûr et fiable sur un serveur Linux et fournit des exemples de code à titre de référence.
- Installer Docker
Tout d'abord, vous devez installer Docker sur le serveur Linux. Il peut être installé via la commande suivante :
$ sudo apt-get update $ sudo apt-get install docker-ce
Une fois l'installation terminée, exécutez la commande suivante pour vérifier si l'installation a réussi :
$ docker version
- Configurez l'entrepôt d'images Docker
Ensuite, vous devez configurer le Docker entrepôt d'images. Vous pouvez choisir d'utiliser l'image de registre officielle de Docker ou des images open source tierces, telles que Harbor, Nexus, etc.
En prenant l'image officielle du registre Docker comme exemple, vous pouvez démarrer un conteneur de registre via la commande suivante :
$ docker run -d -p 5000:5000 --name registry registry:latest
Une fois le démarrage terminé, vous pouvez vérifier si le registre fonctionne correctement via la commande suivante :
$ curl http://localhost:5000/v2/_catalog
Si un un tableau vide est renvoyé []
, indiquant que le registre a été exécuté avec succès. []
,说明Registry已经成功运行。
- 配置镜像仓库的认证和授权
为了保证镜像仓库的安全,需要添加认证和授权功能。可以使用Nginx作为反向代理服务器,并使用Basic Auth认证方式。
首先,安装Nginx:
$ sudo apt-get install nginx
然后,创建一个用于存放认证信息的密码文件:
$ sudo sh -c "echo -n 'admin:' >> /etc/nginx/.htpasswd" $ sudo sh -c "openssl passwd -apr1 >> /etc/nginx/.htpasswd"
创建完成后,需要编辑Nginx配置文件/etc/nginx/sites-available/default
,添加如下内容:
server { listen 80; server_name <your-domain-name>; location / { proxy_pass http://localhost:5000; auth_basic "Restricted"; auth_basic_user_file /etc/nginx/.htpasswd; } }
替换<your-domain-name>
为你的域名。
保存配置文件并重启Nginx:
$ sudo systemctl restart nginx
- 配置HTTPS支持
为了保证通信的安全性,可以使用HTTPS协议进行通信。需要先为镜像仓库生成自签名证书。
首先,安装OpenSSL:
$ sudo apt-get install openssl
然后,生成私钥和自签名证书:
$ sudo openssl req -newkey rsa:2048 -nodes -keyout registry.key -x509 -days 365 -out registry.crt
生成的registry.key
为私钥文件,registry.crt
为自签名证书文件。
接下来,编辑Nginx配置文件/etc/nginx/sites-available/default
,添加如下内容:
server { listen 443 ssl; server_name <your-domain-name>; ssl_certificate /path/to/registry.crt; ssl_certificate_key /path/to/registry.key; location / { proxy_pass http://localhost:5000; auth_basic "Restricted"; auth_basic_user_file /etc/nginx/.htpasswd; } }
替换<your-domain-name>
- Configurer l'authentification et l'autorisation de l'entrepôt d'images
- Afin d'assurer la sécurité de l'entrepôt d'images, des fonctions d'authentification et d'autorisation doivent être ajoutées. Vous pouvez utiliser Nginx comme serveur proxy inverse et utiliser la méthode d'authentification Basic Auth. Tout d'abord, installez Nginx :
$ sudo systemctl restart nginx
Ensuite, créez un fichier de mot de passe pour stocker les informations d'authentification :
$ sudo vi /etc/docker/daemon.json
Après la création, vous devez modifier le fichier de configuration Nginx /etc/nginx/sites-available/default</ code>, ajoutez ce qui suit : </p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>{
"insecure-registries": ["<your-domain-name>:5000"]
}</pre><div class="contentsignin">Copier après la connexion</div></div><p>Remplacez <code><votre-nom-de-domaine>
par votre nom de domaine.
Enregistrez le fichier de configuration et redémarrez Nginx :
$ sudo systemctl restart docker
Configurez le support HTTPS
🎜🎜Afin d'assurer la sécurité de la communication, vous pouvez utiliser le protocole HTTPS pour la communication. Vous devez d'abord générer un certificat auto-signé pour l'entrepôt d'images. 🎜🎜Tout d'abord, installez OpenSSL : 🎜$ docker tag image <your-domain-name>:5000/image $ docker push <your-domain-name>:5000/image $ docker pull <your-domain-name>:5000/image
registry.key
généré est le fichier de clé privée, registry.crt Il s'agit d'un fichier de certificat auto-signé. 🎜🎜Ensuite, éditez le fichier de configuration Nginx <code>/etc/nginx/sites-available/default
et ajoutez le contenu suivant : 🎜rrreee🎜Remplacez <votre-nom-de-domaine>
pour votre nom de domaine. 🎜🎜Enregistrez le fichier de configuration et redémarrez Nginx : 🎜rrreee🎜🎜Utilisez le client Docker pour interagir avec le référentiel d'images🎜🎜🎜Enfin, utilisez le client Docker pour interagir avec le référentiel d'images. Tout d'abord, vous devez configurer un référentiel de confiance pour Docker : 🎜rrreee🎜Ajoutez le contenu suivant dans le fichier de configuration : 🎜rrreee🎜Enregistrez le fichier de configuration et redémarrez le service Docker : 🎜rrreee🎜Vous pouvez maintenant utiliser le client Docker pour interagir avec le référentiel d'images, par exemple, poussez et tirez l'image : 🎜rrreee🎜Ci-dessus sont toutes les étapes et exemples de code pour établir un entrepôt d'images Docker sûr et fiable sur le serveur Linux. En suivant ces étapes, vous pouvez créer un entrepôt d'images Docker sûr et fiable pour garantir la fiabilité et la sécurité des applications conteneurisées. 🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Vous pouvez interroger le nom du conteneur Docker en suivant les étapes: répertorier tous les conteneurs (Docker PS). Filtrez la liste des conteneurs (à l'aide de la commande grep). Obtient le nom du conteneur (situé dans la colonne "Noms").

Étapes de démarrage du conteneur Docker: Tirez l'image du conteneur: Exécutez "Docker Pull [Mirror Name]". Créer un conteneur: utilisez "Docker Create [Options] [Mirror Name] [Commandes et paramètres]". Démarrez le conteneur: exécutez "docker start [nom de conteneur ou id]". Vérifiez l'état du conteneur: vérifiez que le conteneur s'exécute avec "Docker PS".

Vs Code Système Exigences: Système d'exploitation: Windows 10 et supérieur, MacOS 10.12 et supérieur, processeur de distribution Linux: minimum 1,6 GHz, recommandé 2,0 GHz et au-dessus de la mémoire: minimum 512 Mo, recommandée 4 Go et plus d'espace de stockage: Minimum 250 Mo, recommandée 1 Go et plus d'autres exigences: connexion du réseau stable, xorg / wayland (Linux) recommandé et recommandée et plus

Les méthodes pour afficher les journaux Docker incluent: à l'aide de la commande docker logs, par exemple: docker logs contener_name Utilisez la commande docker exec pour exécuter / bin / sh et afficher le fichier journal, par exemple: docker exec -it contener_name / bin / sh; Cat /var/log/continer_name.log Utilisez la commande docker-compose JORS de Docker Compose, par exemple: docker-compose -f docker-com

Créer un conteneur dans Docker: 1. Tirez l'image: docker pull [Nom du miroir] 2. Créer un conteneur: docker run [Options] [Nom du miroir] [Commande] 3. Démarrez le conteneur: docker start [Nom du conteneur]

VS Code est le code Visual Studio Nom complet, qui est un éditeur de code multiplateforme gratuit et open source et un environnement de développement développé par Microsoft. Il prend en charge un large éventail de langages de programmation et fournit une mise en surbrillance de syntaxe, une complétion automatique du code, des extraits de code et des invites intelligentes pour améliorer l'efficacité de développement. Grâce à un écosystème d'extension riche, les utilisateurs peuvent ajouter des extensions à des besoins et des langues spécifiques, tels que les débogueurs, les outils de mise en forme de code et les intégrations GIT. VS Code comprend également un débogueur intuitif qui aide à trouver et à résoudre rapidement les bogues dans votre code.

Les raisons de l'installation des extensions de code vs peuvent être: l'instabilité du réseau, les autorisations insuffisantes, les problèmes de compatibilité système, la version de code vs est trop ancienne, un logiciel antivirus ou des interférences de pare-feu. En vérifiant les connexions réseau, les autorisations, les fichiers journaux, la mise à jour vs du code, la désactivation des logiciels de sécurité et le redémarrage du code ou des ordinateurs, vous pouvez progressivement dépanner et résoudre les problèmes.

VS Code pour changer le mode chinois: ouvrez l'interface des paramètres (Windows / Linux: Ctrl, macOS: CMD,) Recherchez des paramètres "Editor: Language" Sélectionnez "Chine
