From 5357d32fdcf18683a80a5dfd011b28ba58d3165f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E4=B9=85=E5=90=8C?= <2307226831@qq.com> Date: Fri, 1 Mar 2024 15:13:56 +0800 Subject: [PATCH] add httpd/doc --- httpd/doc/image-info.yml | 91 +++++++++++++++++++++++++++++++++++++ httpd/doc/picture/logo.png | Bin 0 -> 19597 bytes 2 files changed, 91 insertions(+) create mode 100644 httpd/doc/image-info.yml create mode 100644 httpd/doc/picture/logo.png diff --git a/httpd/doc/image-info.yml b/httpd/doc/image-info.yml new file mode 100644 index 0000000..8d7d141 --- /dev/null +++ b/httpd/doc/image-info.yml @@ -0,0 +1,91 @@ +name: httpd +description: The Apache HTTP Server (httpd) is a powerful and flexible HTTP/1.1 compliant web server. +environment: " + 本应用以容器镜像的方式供用户使用,运行于预置docker的Linux环境。Docker的推荐安装方式如下: + ## apt安装 + ### 1.更新系统软件包依赖 + ``` + sudo spt update + sudo apt install ca-certificates curl gnupg lsb-release + ``` + ### 2.添加Docker官方GPG密钥 + ``` + sudo mkdir -p /etc/apt/keyrings + curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg + sudo chmod a+r /etc/apt/keyrings/docker.gpg + ``` + ### 3.添加Docker官方APT源 + ``` + echo \"deb [arch=$(dpkg --print-architecture) signed-by=/usr/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable\" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null + ``` + ### 4.再次更新软件包索引 + ``` + sudo apt update + ``` + ### 5.安装Docker + ``` + sudo apt install docker-ce docker-ce-cli containerd.io + ``` + + ## yum安装 + ### 1.安装yum-utils + ``` + sudo yum install -y yum-utils + ``` + ### 2.添加Docker源 + ``` + sudo yum-config-manager \ + > --add-repo \ + > https://download.docker.com/linux/centos/docker-ce.repo + ``` + ### 3.安装Docker + ``` + sudo yum install -y docker-ce docker-ce-cli containerd.io + ``` + + 注意,在openEuler环境安装docker时,可执行如下命令一键安装 + ``` + yum install -y docker + ``` + + ## 脚本安装 + ### 1.下载安装脚本 + ``` + curl -fsSL https://get.docker.com -o get-docker.sh + ``` + ### 2.使用root权限执行脚本 + ``` + sudo sh get-docker.sh + ``` + 使用脚本安装方式时,如果用户要指定安装的docker版本,需要自行修改`get-docker.sh`的源码内容。 + + ## 验证 + ``` + sudo docker run hello-world + ``` + " +download: " + 获取容器镜像 + ``` + docker pull openeuler/httpd:httpd2.4.51-oe2203lts + ``` + " +install: " + 启动容器 + ``` + docker run --name my-httpd -d -p 80:80 openeuler/httpd:httpd2.4.51-oe2203lts + ``` + 用户可根据自身需求,自定义启动选项。 + " +license: Apache-2.0 license +similar_packages: + - Nginx: 一个高性能的HTTP和反向代理服务器,特点是占用资源少、处理请求速度快,适用于高并发的Web应用。 + - Lighttpd: 一个轻量级的Web服务器软件,特点是占用资源少、处理静态文件速度快,适用于高并发的静态网站。 + - Apache Tomcat: 一个开源的Java Web服务器软件,它是Apache的一个子项目。主要用于部署和运行Java Servlet和JSP(JavaServer Pages)应用程序。 +dependency: + - systemd-units + - apr + - apr-util + - mailcap + - mariadb-connector-c + - mod_http2 diff --git a/httpd/doc/picture/logo.png b/httpd/doc/picture/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..f7485463aa1b7aa7732b98626b0290126fe1945d GIT binary patch literal 19597 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 e$ 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 literal 0 HcmV?d00001 -- Gitee