Alpine 生产环境部署
![]() 这读起来更像是一篇散文,而不是有用的教程或建议 |
生产环境是所有开发成果的最终目的地。几乎总是当有人进行某种开发时,无论它多么小(例如一个简单的脚本),开发环境都不是唯一使用它的地方或系统(例如,该脚本可以在网络中的其他计算机上使用)。
开发环境永远与生产环境不同,通常,生产环境仅具有运行已安装和部署产品所需的必要软件。在专业的 Linux 环境中,没有图形工具,一切都是极简主义的……就像 Alpine Linux 一样。
服务器和 Docker 容器
过去最著名的案例是使用 CentOS 环境,但随着时间的推移,Linux 变得越来越笨重和缓慢。Alpine 和 Docker 改变了这一点,如果您认为 Red Hat 和 CentOS 在这方面是最好的,那么这篇文章简要描述了这些系统的真实情况: https://gitea.com/venenux/venenux/src/branch/master/docs/others-infodocs-details-centos-vs-fedora-en.md ,这两个项目都与 Red Hat 相关,一个是超前的,另一个是落后的,与其他发行版的主要区别在于它们缺乏软件包和设置,这是由于两者共同的市场目标造成的……显然是由于 RedHat 的关系。
但是今天这一切都改变了,现在有了 Docker:一个有用的工具,用于在“容器”(如虚拟机)中打包、运输和运行应用程序,从而消除了对物理硬件的需求,从而可以更有效地利用计算资源,从能源消耗和成本效益方面来看。今天,即使是像 Google、VMware 和 Amazon 这样的大公司也在构建服务来支持它。
服务器在生产环境中通常是非常强大的机器,但想想看!一个 500GB 的磁盘只运行本地网络的 DNS?这就是 Docker 及其与服务器关系的原因。
容器和服务器之间的一大区别在于,容器与隔离环境中的其他容器*共享*主机服务器系统的内核和服务器资源。
服务器相关文档
TODO:webpack,npm(高级……因为它包含在下面的 lamp 中),大数据,Docker 相关的优秀教程
Web 部署:LAMP
在生产 Web 环境中,LAMP 意味着 Linux + Apache + Mysql + Php 已安装并集成,但今天 apache 的“A”更多地用作 Nginx 或 Lighttpd,而 MySQL 的“M”更多地用作 MariaDB。LAMP 相关文档有
- Web 服务器的 LAMP 部署: 生产 Web 服务器:Lighttpd
- 带有 PHP、用户 html_dir 和 MariaDB 的 Web 服务器 LAMP 部署: MySQL
- 部署使用 Let's Encrypt 而无需 chain-tools – 只需加水: 生产 Let's Encrypt:dehydrated
Web 部署:LUA
WIP(正在进行中)
数据库
- SQlite,最易于使用的无引擎数据库系统: Debelovers :sqlite
- UnixODBC,如何连接多个数据库: 生产数据库 :unixodbc
- MySQL/MariaDB 部署: MariaDB/MySQL
网络
- 双栈(ipv4 到 ipv6)DNS 与链式从服务器,仅适用于勇敢的 Linux 系统管理员: : 生产 DNS:双栈 Bind 服务器
- Cacti:流量分析和监控网络
Docker 相关文档
WIP(正在进行中)