V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  yinmin  ›  全部回复第 103 页 / 共 107 页
回复总数  2138
1 ... 95  96  97  98  99  100  101  102  103  104 ... 107  
2023-03-29 09:55:10 +08:00
回复了 mingge2333 创建的主题 程序员 etcd 使用 docker 部署为什么可以使用域名
在业务系统部署中,例如有 5 个容器:nginx 容器、web 业务系统容器、管理平台容器、mysql 容器、redis 容器。

web 业务系统容器和管理平台容器会经常更新,在更新管理平台容器时,肯定不希望影响 web 业务系统容器。redis 容器通常也不重启。

因此,5 个容器通常分多个 yaml 文件分别管理的,如果容器之间使用域名方式访问,可能会出现问题(先启动的容器没法解析后启动容器的 ip 地址),容器使用固定 ip 地址稳定性更佳。
2023-03-29 01:00:55 +08:00
回复了 mingge2333 创建的主题 程序员 etcd 使用 docker 部署为什么可以使用域名
@mingge2333 我发现 https://github.com/apache/apisix-docker/blob/master/example/docker-compose.yml 的 port 参数可能写的有问题。内网之间容器是可以直接访问的,不需要 port 抛出端口。

这个 yml 示例里,只需要将给外部访问的 web 容器端口通过 port 抛出即可,内部使用的容器不需要 port ,否则会有安全隐患的。
2023-03-29 00:53:04 +08:00
回复了 mingge2333 创建的主题 程序员 etcd 使用 docker 部署为什么可以使用域名
@mingge2333 容器名是在 yaml 里通过 container_name: <name>指定的,只有未指定名称时,docker 才随机生成。我看了 docker-compose.yml ,在这个示例里没有设置 container_name ,etcd 应该是 service name 。

设定 container_name 的好处是:查看容器列表时,知道每个容器都是啥内容。
不设定 container_name 的好处是:如果你要启用多套容器组,不会有名称冲突。

我测试了,通过 service name 和 container name 都能做 DNS 解析。
2023-03-29 00:35:29 +08:00
回复了 mingge2333 创建的主题 程序员 etcd 使用 docker 部署为什么可以使用域名
@archean 的确可以通过 depends on(link)方式指定容器的启动次序,但是如果存在嵌套引用 (a->b, b->c, c->a),就没办法写 link 关系了。使用 ip 地址更接近于物理机的部署方式,以前我们使用域名(容器名)部署,但运行一段时间后,我们重新规划了虚拟网络,并把域名都改成固定 ip 地址访问了,这样更稳定些吧。
2023-03-28 16:11:27 +08:00
回复了 mingge2333 创建的主题 程序员 etcd 使用 docker 部署为什么可以使用域名
docker 部署一个系统,包含多个容器。我推荐:创建一个虚拟内网,然后每个容器都配置固定 IP 地址,不需要 docker 解析 DNS ,系统更稳定。

例如,nginx 容器使用域名(容器名)proxy 后端程序容器。如果 nginx 先启动,后端程序容器后启动,nginx 会发现域名无法解析而报错,如果都使用 ip 地址,就没这个问题了。
2023-03-28 15:59:57 +08:00
回复了 Allonsy 创建的主题 Python Python 进阶疑惑
Effective Python: 编写高质量 Python 代码的 90 个有效方法(第二版)
2023-03-28 14:03:58 +08:00
回复了 rimutuyuan 创建的主题 分享发现 我的 ChatGPT 小程序被封禁了
这是国家的《互联网信息服务深度合成管理规定》,你的小程序必须符合第二章第七条、第九条、第十条等规定。第二章第十三条对微信平台也有合规要求的。

http://www.gov.cn/zhengce/zhengceku/2022-12/12/content_5731431.htm

用 chatgtp 做接入,应该很难合规。
edge 边栏的小浏览器是不支持插件的。正解:换 ip/节点 或者 套 cf warp
2023-03-27 17:52:39 +08:00
回复了 tlerbao 创建的主题 程序员 一般开源系统演示站点禁止修改演示数据都是怎么实现的?
做演示系统,重置数据库最方便的方式是用 docker 。

例如,你使用的是 mysql 数据库,你先从官方镜像创建一个 mysql 容器模版,数据目录留在容器里,不要 volume 到主机;然后把演示数据导入 mysql ;然后用容器模版生成新镜像。

从这个新镜像创建新的数据库容器给演示系统使用,定期(例如 2 小时) recreate 这个数据库容器,recreate 一般只需要几百毫秒,非常快。也可以创建多个数据库容器副本给不同的客户。

演示系统的程序部分也可以使用类似的方式用 docker 部署。
2023-03-27 17:33:56 +08:00
回复了 tlerbao 创建的主题 程序员 一般开源系统演示站点禁止修改演示数据都是怎么实现的?
最简单的方法,软件部署到 docker 里,然后 2 小时 recreate 一下
2023-03-26 21:15:40 +08:00
回复了 Richard14 创建的主题 Python 使用 Python 连接 Redis,想用自签证书启用 tls 协议报错
这个错误是指 redis 服务器的证书配置有问题。你用 ca 再做一套新的 server.crt 和 server.key 。

启动 redis 服务器用下面这个参数:
redis-server --tls-port 6666 --port 0 --tls-cert-file ./server.crt --tls-key-file ./server.key --tls-ca-cert-file ./ca.crt

客户端用这个测试命令:
redis-cli --tls -p 6666 --cert ./client.crt --key ./client.key --cacert ./ca.crt
2023-03-25 20:13:37 +08:00
回复了 xinyana 创建的主题 问与答 安卓有没有全局拦截网址的 app 啊
冲浪板加规则
2023-03-25 20:05:50 +08:00
回复了 Richard14 创建的主题 Python 使用 Python 连接 Redis,想用自签证书启用 tls 协议报错
你要用 ca 再做一套 client.crt 和 client.key ,redis-cli 使用 client.crt 、client.key 、ca.crt 这 3 个文件
二战的时候,英国人破译德国人密码,就是利用了信息头部和信息结尾内容相同的特点,降低了破解难度。因此,理论上,获取 ABCDE 后破解难度会下降。

可是,AES 不是二战时的加密算法。攻击者获取 ABCDE 后,破解难度的下降程度忽略不计。也许同一个超大文件被不同 AES 密钥加密后,被获取数亿~数百亿次,类似这种规模才有研究讨论的意义。
这个讨论意义不大。AES 加密的目的,就是将密文放到公网(不安全网络)上传输的,传输的节点(如公司网管、电信路由节点管理员、酒店 WIFI 管理员等)都能获取到密文。也就是说,AES 加密的目的,就是让密文在“泄密”的场景下传输数据的。

因此,没有“密文泄密”这个概念。破解难度只与密钥长度有关,AES256 目前是足够安全,没人会去暴力破解的。
2023-03-24 21:24:07 +08:00
回复了 ixixi 创建的主题 宽带症候群 n100 的小主机 做开发够不够用,体验如何?
N100 是跑 NAS 、软路由的,做开发不行。建议上 amd 5800H 或者 6800H 。如果选华硕,你要留意 amd6 系列的 minipc 可能是最高 32GB 内存,没法 64GB 。
app 常用的 dns+https ,大厂 app 统统改成 ip+tcp ,域名解析和数据加密都是跑私有协议,为了安全(避友商)
其实,如果是基于 windows 做些小应用,也可以考虑用 .net 4.0 。.net 4.0 的运行库是内置 win10 ,生成 exe 后直接绿色运行。
1 ... 95  96  97  98  99  100  101  102  103  104 ... 107  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5719 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 46ms · UTC 03:03 · PVG 11:03 · LAX 19:03 · JFK 22:03
Developed with CodeLauncher
♥ Do have faith in what you're doing.