当前位置:首页 > 技术文章 > 正文内容

Alpine Linux基础使用教程

arlanguage5个月前 (12-20)技术文章43

介绍

Alpine Linux是一个3S(分别是Small,Simple,Secure)的Linux发行版本,基于musl libc和BusyBox构建。

他非常适合做docker的基础镜像,因为他足够小,仅有5MB。

虽然他小但是他提供了强大的包管理软件(apk),可以用来安装各种各样的软件包来扩展系统功能。

官网: https://www.alpinelinux.org/

软件包仓库: https://pkgs.alpinelinux.org/packages

安装

  • 下载系统ISO
  • 将ISO刻录成CD或者做成USB引导设备
  • 引导系统,默认用户:root,密码:无。
  • 执行安装/配置命令
 setup-alpine
  • 参考
 https://wiki.alpinelinux.org/wiki/Installation

配置

  • 修改仓库地址
 sed -i 's/dl-cdn.alpinelinux.org/mirrors.tuna.tsinghua.edu.cn/g' \
 /etc/apk/repositories && apk update
  • 设置时区(默认UTC)为CST
 apk add tzdata \
 && cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
 && echo "Asia/Shanghai" > /etc/timezone && apk del tzdata
  • 安装服务管理
 apk add --no-cache openrc 
  • docker环境中修复awk: /etc/network/interfaces: No such file or directory问题
 sed -i 's/#rc_sys=""/rc_sys="lxc"/g' /etc/rc.conf &&\
 echo 'rc_provide="loopback net"' >> /etc/rc.conf
  • docker环境中修复* WARNING: nginx is already starting类似问题
 mkdir -p /run/openrc && touch /run/openrc/softlevel
 /sbin/openrc
  • docker环境中修复can't create /sys/fs/cgroup/systemd/tasks: Read-only file system问题
 挂载卷到 /sys/fs/cgroup

包管理工具(apk)语法

  • 更新包列表
 apk update
  • 搜索软件包
 apk search 软件包名
  • 获取软件包信息
 apk info [软件包名]
  • 添加软件包
 apk add --no-cache 软件包名1 [软件包名2 ... n] # 在线安装软件包
 
 apk add --allow-untrusted /path/to/xxx.apk # 添加本地软件包
  • 移除软件包
 apk del 软件包名 [软件包名2 ... n] 
  • 更新系统
 apk upgrade
  • 软件包仓库
 https://pkgs.alpinelinux.org/packages

Service管理语法

  • 安装软件包
 apk add --no-cache openrc 
  • 添加服务
 rc-update add Service名
 
 如启用SSHD服务:
 rc-update add sshd
  • 移除服务
 rc-update del Service名
  • 启用/停止/重启服务
 rc-service Service名 start/stop/restart
  • 查看服务列表
 rc-status -s # 列出服务和状态
 rc-service -l # 列出所有可用的服务名列表 

使用apk来构建nginx+mariadb+php7环境

  • 安装Nginx
 apk add --no-cache nginx && \
 rc-update add nginx default
 
 adduser -D -g 'www' www
 mkdir -p /var/www/html
 mkdir -p /var/log/nginx
 mkdir -p /var/run/nginx
 chown -R www:www /var/lib/nginx
 chown -R www:www /var/www
 chown -R www:www /var/log/nginx
 chown -R www:www /var/run/nginx
  • 安装MariaDB
 apk add --no-cache mariadb mariadb-client && \
 rc-update add mariadb default && \
 /etc/init.d/mariadb setup && rc-service mariadb start
  • 安装Redis
 apk add --no-cache redis && \
 rc-update add redis default && \
 rc-service redis start
  • 安装PHP7
 apk add --no-cache php7-common php7-fpm php7-intl php7-openssl \
 php7-tokenizer php7-mysqlnd php7-redis php7-fileinfo \
 php7-mbstring php7-exif php7-opcache php7-gd php7-json \
 php7-xml php7-iconv php7-curl php7-zip php7-mcrypt \
 php7-dom php7-pdo php7-simplexml
 
 rc-update add php-fpm7 default && \
 rc-service php-fpm7 start
  • 配置Nginx支持PHP-FPM

扫描二维码推送至手机访问。

版权声明:本文由AR编程网发布,如需转载请注明出处。

本文链接:http://www.arlanguage.com/post/359.html

标签: nginx 支持php
分享给朋友:

“Alpine Linux基础使用教程” 的相关文章

Nginx常用配置及和基本功能讲解

作者:京东物流 殷世杰Nginx已经广泛应用于J-one和Jdos的环境部署上,本文对Nginx的常用的配置和基本功能进行讲解,适合Ngnix入门学习。1 核心配置找到Nginx安装目录下的conf目录下nginx.conf文件,Nginx的基本功能配置是由它提供的。1.1 配置文件结构Nginx的...

ThinkPhp6从安装到配置全解

Thinkphp6已经不支持之前安装方式了,只能使用Composer安装,对于V6的新用户来说,真希望有个全过程手册,我就分享一下我自己安装使用的过程,供参考。一、安装Composer在 Linux 和 Mac OS中可以运行如下命令:curl -sS https://getcomposer.org...

技巧:PHP版本怎样隐藏在Linux服务器

通常情况下,大多数安装web服务器软件的默认设置存在信息泄露,这些软件其中之一就是PHP。PHP是如今最流行的服务端html嵌入式语言之一。而在如今这个充满挑战的时代,有许多黑客会尝试发现你服务端的漏洞。因此,ehowstuff网站一篇简单描述如何在Linux服务器中隐藏PHP信息值得关注。(图片来...

如何在 NGINX 中创建自定义 404 错误页面

每次NGINX在尝试处理客户端请求时遇到错误,它都会返回一个错误。每个错误都包含一个HTTP响应代码和一个简短描述。错误通常通过简单的默认HTML页面显示给用户。幸运的是,您可以配置NGINX以向您的站点或 Web 应用程序的用户显示自定义错误页面。这可以使用 NGINX 的 error_page指...

在AWS上组合使用ELB和Nginx Plus获得更多特性

使用AWS的客户经常问我们,对于负载均衡,到底是使用AWS的ELB还是Nginx Plus?Amazon曾经发布了一个白皮书来说明如何在AWS上配置Nginx Plus。本文将聚焦在选择Nginx Plus或者ELB时需要考虑的因素方面,也会讨论一些更适合于组合使用Nginx Plus和ELB的情形...

常见nginx配置文件的主上下文指令有哪些?

Nginx 由模块组成,这些模块由配置文件中指定的指令(directive)来控制。指令被分为简单指令和块指令。简单指令由名称和用空格分隔的参数组成,并以分号 (;) 结尾。块指令与简单指令具有相同的结构,但是在分号的位置,它以一组用大括号 ({ 和 }) 括起来的额外指令结束。如果块指令可以在大括...