最近做个系统需要安装在客户本机,客户使用操作系统为统信UOS桌面专业版,机器型号为华为笔记本,处理器为麒麟arm64架构的。由于系统依赖于mysql、redis,使用docker安装相对方便。
1.进入开发者模式
在控制中心-通用-开发者模式-进入开发者模式,按照指引操作即可,操作完需要重启电脑。
2.安装docker
sudo apt-get install ca-certificates curl gnupg
docker 安装程序使用 iptables 进行 nat。不幸的是 Debian 使用 nftables。您可以将条目转换为 nftables,或者设置 Debian 以使用旧版 iptables
sudo update-alternatives --set iptables /usr/sbin/iptables-legacy
sudo update-alternatives --set ip6tables /usr/sbin/ip6tables-legacy
开始安装docker-ce,需要将docker源替换为阿里云的
sudo apt-get install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://mirrors.aliyun.com/docker-ce//linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.aliyun.com/docker-ce/linux/debian buster stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo docker -v
sudo systemctl daemon-reload
sudo systemctl restart docker
至此docker就安装好了,由于国内docker无法访问,我们得换个国内的
cd /etc/docker
sudo touch daemon.json
sudo chmod +x daemon.json
echo '{' |sudo tee daemon.json
echo ' "registry-mirrors": [' |sudo tee -a daemon.json
echo ' "https://docker.m.daocloud.io"' |sudo tee -a daemon.json
echo ' ]' |sudo tee -a daemon.json
echo '}'|sudo tee -a daemon.json
cat daemon.json
sudo systemctl restart docker
3.安装mysql
由于arm架构暂不支持mysql5.7及以下版本,所以要么找非官方源,要么安装mysql8.0版本,我这边选择安装mysql8.0
sudo docker pull mysql:8.0
cd /data/soft
sudo mkdir mysql
cd mysql
sudo mkdir data conf logs
#创建示例镜像
sudo docker run -p 3306:3306 --name sample-mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0
#复制示例镜像中的配置文件到本地目录中
sudo docker cp sample-mysql:/etc/mysql/. /data/soft/mysql/conf
#删除示例镜像
sudo docker rm -f sample-mysql
#修改my.cnf,修改为你自己需要的,修改后需要权限为644,权限太高不生效
sudo chmod 644 /data/soft/mysql/conf/my.cnf
#创建mysql镜像
sudo docker run -p 3306:3306 --name mysql
-v /data/soft/mysql/log:/var/log/mysql
-v /data/soft/mysql/data:/var/lib/mysql
-v /data/soft/mysql/conf:/etc/mysql
--restart=always
-e MYSQL_ROOT_PASSWORD=123456
-d mysql:8.0
至此mysql安装完成,我们可以验证是否安装成功
#查看docker容器状态是否正常
#如果STATUS是Up..开头说明正常,如果不是则用docker logs mysql查看具体原因,根据原因排查修改后重新启动
sudo docker ps -a
#进入mysql容器
sudo docker exec -it mysql bash
mysql -uroot -p123456
4.安装redis
sudo docker pull redis
sudo docker run --restart=always -p 6379:6379 --name redis -d redis --requirepass 123456
redis安装比较简单,我这边由于redis数据量很少没有做其它配置,如果你需要配置其它的,可以按照网上docker redis教程进行修改