1、下载alpine
2、安装alpine
以iso为例,以esxi为例
直接创建虚拟机,然后创建CD/DVD选择上传的iso镜像,然后配置一下机器cpu、内存等。启动
默认用户名root
无密码
3、配置本机hostname
#修改主机名为jenreyAlpine
echo 'jenreyAlpine' > /etc/hostname
#立即生效
hostname -F /etc/hostname
4、设置root密码
#设置root用户密码,会让输入两次密码,回车确认
passwd root
5、安装网卡并设置静态ip
#新建网卡配置文件
vi /etc/network/interfaces
#文件内容为(注意:是英文字母lo):
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.1.177
netmask 255.255.255.0
gateway 192.168.1.1
#重启网络服务
service networking restart
#配置DNS
vi /etc/resolv.conf
#文件内容为
nameserver 114.114.114.114
nameserver 114.114.115.115
6、开启SSH
#安装openssh-server服务器
apk add openssh-server
#修改配置文件
vi /etc/ssh/sshd_config
#如果要想使用root用户远程管理,需要修改#PermitRootLogin prohibit-password参数为:
PermitRootLogin yes
#将ssh服务配置为开机自动启动
rc-update add sshd
#立刻生效
/etc/init.d/sshd restart
7、更新源
#使用 latest-stable 指向最新的稳定版本
vi /etc/apk/repositories
#写入
https://mirrors.ustc.edu.cn/alpine/latest-stable/main
https://mirrors.ustc.edu.cn/alpine/latest-stable/community
#更新最新镜像源列表
apk update
8、apk相关命令总结
#更新最新镜像源列表
apk update
#查找所以可用软件包
apk search
#查找所以可用软件包及其描述内容
apk search -v
#通过软件包名称查找软件包
apk search -v 'acf*'
#通过描述文件查找特定的软件包
apk search -v -d 'docker'
#安装一个软件
apk add openssh
#安装多个软件
apk add openssh openntp vim
#不使用本地镜像源缓存,相当于先执行update,再执行add
apk add --no-cache mysql-client
#列出所有已安装的软件包
apk info
#显示完整的软件包信息
apk info -a zlib
#显示指定文件属于的包
apk info --who-owns /sbin/lbu
#升级所有软件
apk upgrade
#升级指定软件
apk upgrade openssh
#升级多个软件
apk upgrade openssh openntp vim
#指定升级部分软件包
apk add --upgrade busybox
#删除一个软件
apk del openssh
#更新系统
apk upgrade
9、Alpine Linux服务管理
alpine没有使用fedora的systemctl来进行服务管理,使用的是RC系列命令
#查看运行的服务
rc-status
#列出所有服务
rc-status -a
#查看状态的帮助
rc-status --help
#查看服务管理的帮助
rc-service --help
#添加服务
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
10、设置时区
#查看时间及时区
date -R
#安装tzdata
apk add tzdata
#拷贝时区文件
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
#指定时区
echo "Asia/Shanghai" > /etc/timezone
#移除时区文件(指定完时区就可以删除了)
apk del tzdata
11、安装ifconfig命令
apk add net-tools
12、安装vim命令
apk add vim
13、安装telnet
apt-get install telnet
14、安装redis
#安装redis
apk add --no-cache redis
#添加redis服务
rc-update add redis default
#启动redis服务
rc-service redis start
15、安装mysql
安装
# alpine 中MySQL 用的就是MariaDB
apk add mysql mysql-client
# 或
apk add mariadb mariadb-client
配置
# 创建运行mysqld 后台进程必须的目录并赋给mysql 组和mysql 用户
mkdir -p /run/mysqld
chown -R mysql:mysql /run/mysqld
# 加载数据库文件
chown -R mysql:mysql /var/lib/mysql
mysql_install_db --user=mysql --ldata=/var/lib/mysql
检验
# 启动mysqld,注意加个& 后台运行,否则只能Ctrl+p,Ctrl+q 退出再docker exec 进来了
/usr/bin/mysqld_safe --datadir='/var/lib/mysql' &
# 设置root 密码
mysqladmin -u root password "root"
客户端检验
# 客户端登录,注意-p 后面直接跟密码不能有空格
mysql -u root -p"root"
使用内置的mysql数据库,测试SQL语句
use mysql
select count(*) from user;
exit
或者将测试内容写在一起
# 创建测试文件
cd /tmp
cat > test.sql << EOF
use mysql
select count(*) from user;
exit
EOF
# 使用管道符传给mysql 客户端执行
cat test.sql | mysql -u root -proot
为了方便脚本运行,例如定时任务自动备份,我们也可以配置~/.my.cnf
cat > ~/.my.cnf << EOF
[client]
host=localhost
port=3306
user='root'
password='root'
[mysql]
database='mysql'
EOF
以后,使用mysql,mysqldump这些命令都不需要输入用户名和密码了。
8.其它指令
$ reboot #重启系统,类似于shutdown -r now。
$ halt #关机,类似于shutdown -h now。
$ poweroff #关机
在docker中下载alpine
docker pull alpine
docker run -it alpine /bin/sh
Alpine Linux 没有内置bash,所以这里使用的sh作为伪终端,在为 Alpine Linux 编写 shell 脚本的时候也需要注意,使用 sh 而不是bash。