导读 Alpine linux为了精简本身并没有做太多的常用软件,安装完系统之后需要自己手动配置,也可以在配置过程中体会一下常用发行版为用户做过的努力

开启SSH登陆

默认 alpine 没有开启远程登录权限。 ssh远程登录不了。

vi /etc/ssh/sshd_config

增加:

PermitRootLogin yes

允许root登录,当然这个是测试环境,如果有需要也可以自己新建ssh账户。这是另话。

安装常用软件
apk update
apk add bash wget curl git make vim docker
APK安装报错
ERROR: unsatisfiable constraints:
mysql-client (missing):
required by: world

如果碰到上面类似的报错,那是当前的软件源有问题,建议换个源,我在安装docker、go和mysql的时候都遇到类似的"required by: world"的错误无法安装,一筹莫展好几天,直到我换了中科大的源。
编辑

/etc/apk/repositories

然后在文件的最顶端添加(注意将3.3换成需要的版本)

http://mirrors.ustc.edu.cn/alpine/v3.3/main/
安装openjdk

因为Alpine linux使用的是musl,与常见的glibc不同,Musl是一个轻量级的C标准库。所以oracle上下载的jdk和openjdk无法直接使用。自己动手编译需要花费几倍的时间精力,可以找已经打包好了的针对musl编译的openjdk来直接安装。azul提供了针对Alpine linux的openjdk,可以直接拿来安装。
安装过程和普通的jdk安装就没有任何区别了,下载tar包解压到安装目录,配置环境变量即可。

wget -mr https://cdn.azul.com/zulu/bin/zulu11.29.3-ca-jdk11.0.2-linux_musl_x64.tar.gz
tar -xzfv zulu11.29.3-ca-jdk11.0.2-linux_musl_x64.tar.gz
cd zulu11.29.3-ca-jdk11.0.2-linux_musl_x64.tar.gz
mv zulu /usr/lib/jvm/
/usr/lib/jvm/zulu-8/bin/java -version
设置时区

setup-alpine安装前面不仔细看,设置时区容易忽略,好多程序用到的时间校验就容易出问题。用到手动在alpine 下修改UTC时间为CST时间 (测试通过)

$ apk add tzdata
$ ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
$ echo "Asia/Shanghai" > /etc/timezone
安装glibc

这是作为Alpine Linux包运行的GNU C库,用于运行链接的二进制文件glibc

apk --no-cache add ca-certificates wget
wget -q -O /etc/apk/keys/sgerrand.rsa.pub https://alpine-pkgs.sgerrand.com/sgerrand.rsa.pub
wget https://github.com/sgerrand/alpine-pkg-glibc/releases/download/2.29-r0/glibc-2.29-r0.apk
apk add glibc-2.29-r0.apk

有关最新下载链接,请参阅发行版页面。如果你使用的工具,除了包之外localdef你还需要glibc-bin和包。glibc-i18nglibc

本文原创地址:https://www.linuxprobe.com/alpine-linux-study3.html编辑:倪家兴,审核员:逄增宝