IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> docker学习(十三)docker config 的使用 -> 正文阅读

[系统运维]docker学习(十三)docker config 的使用


前言

在集群环境中配置文件的分发,可以通过将配置文件放入镜像中、设置环境变量、挂载volume、挂载目录的方式,当然也可以通过 docker config 来管理集群中的配置文件,这样的方式也更加通用。


一、docker config 命令

1、docker config

[root@swarm-master test]# docker config --htlp
unknown flag: --htlp
See 'docker config --help'.

Usage:	docker config COMMAND

Manage Docker configs

Commands:
  create      Create a config from a file or STDIN 				  从文件或标准输入创建config
  inspect     Display detailed information on one or more configs 查看config详细信息
  ls          List configs 										  查看config列表
  rm          Remove one or more configs 						  删除config

Run 'docker config COMMAND --help' for more information on a command.

2、 创建config

(1)从文件创建

创建文件

vi default.conf
[root@swarm-master test]# cat default.conf 
server {
    listen       88;
    server_name  localhost;

    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
    }
}

创建config

[root@swarm-master test]# docker config create conf default.conf 
je21ykql9tzebr0j2v7ep0kat

查看config

[root@swarm-master test]# docker config ls
ID                          NAME                CREATED             UPDATED
je21ykql9tzebr0j2v7ep0kat   conf                5 minutes ago       5 minutes ago

(2)从标准输入创建

创建config

[root@swarm-master test]# echo "listen 80" | docker config create conf2  -
nvzeahpik5itq7mrvad08pap6

查看config

[root@swarm-master test]# docker config ls
ID                          NAME                CREATED             UPDATED
je21ykql9tzebr0j2v7ep0kat   conf                7 minutes ago       7 minutes ago
nvzeahpik5itq7mrvad08pap6   conf2               7 seconds ago       7 seconds ago

3、查看config详细信息

[root@swarm-master test]# docker config inspect conf
[
    {
        "ID": "je21ykql9tzebr0j2v7ep0kat",
        "Version": {
            "Index": 170
        },
        "CreatedAt": "2021-12-08T22:12:31.543232369Z",
        "UpdatedAt": "2021-12-08T22:12:31.543232369Z",
        "Spec": {
            "Name": "conf",
            "Labels": {},
            "Data": "c2VydmVyIHsKICAgIGxpc3RlbiAgICAgICA4ODsKICAgIHNlcnZlcl9uYW1lICBsb2NhbGhvc3Q7CgogICAgbG9jYXRpb24gLyB7CiAgICAgICAgcm9vdCAgIC91c3Ivc2hhcmUvbmdpbngvaHRtbDsKICAgICAgICBpbmRleCAgaW5kZXguaHRtbCBpbmRleC5odG07CiAgICB9Cn0K"
        }
    }
]

对conf进行base64解码

[root@swarm-master test]# docker config inspect -f '{{json .Spec.Data}}' conf | cut -d '"' -f2 | base64 -d
server {
    listen       88;
    server_name  localhost;

    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
    }
}

4、删除secret

[root@swarm-master test]# docker config rm conf2
conf2

[root@swarm-master test]# docker config ls
ID                          NAME                CREATED             UPDATED
je21ykql9tzebr0j2v7ep0kat   conf                10 minutes ago      10 minutes ago

二、docker config 使用

1、使用nginx镜像创建容器

在conf配置中,将nginx的监听端口改成了88,替换掉nginx中的默认80端口的配置文件,创建service时,将容器内部端口88端口映射成主机上90端口

[root@swarm-master test]# docker service create --name nginx-01 --config source=conf,target=/etc/nginx/conf.d/default.conf -p 90:88 nginx:latest
pocy3ph88gy7ng9g2lbq9jvnw
overall progress: 1 out of 1 tasks 
1/1: running   [==================================================>] 
verify: Service converged 

2、测试

访问90端口,可以看到访问是成功的。

[root@swarm-master test]# curl http://127.0.0.1:90
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
html { color-scheme: light dark; }
body { width: 35em; margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif; }
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p>

<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p>

<p><em>Thank you for using nginx.</em></p>
</body>
</html>

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-12-09 12:04:23  更:2021-12-09 12:05:11 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/18 9:27:42-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码