清华大学源https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/
cat /etc/apt/source.list
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
deb http://security.ubuntu.com/ubuntu/ jammy-security main restricted universe multiverse
# deb-src http://security.ubuntu.com/ubuntu/ jammy-security main restricted universe multiverse
# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse
# # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse清华大学源https://mirrors.tuna.tsinghua.edu.cn/help/docker-ce/
1.3安装jdk21
apt update
apt list --upgradable #查看可更新的软件包
apt upgrade -y #更新包
apt install vim net-tools iputils-ping ntpdate #安装基础软件
timedatectl set-timezone Asia/Shanghai #更改时区
ntpdate -u ntp.aliyun.com1.如果你过去安装过 docker,先删掉:
for pkg in docker.io docker-doc docker-compose podman-docker containerd runc; do apt-get remove $pkg; done
2.首先安装依赖:
apt-get update
apt-get install ca-certificates curl gnupg
3.信任 Docker 的 GPG 公钥并添加仓库:
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu \
"$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
tee /etc/apt/sources.list.d/docker.list > /dev/null
apt-get update
4.查看可选版本
root@ubuntu:~# sudo apt-cache madison docker-ce
docker-ce | 5:25.0.0-1~ubuntu.22.04~jammy | https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu jammy/stable amd64 Packages
docker-ce | 5:24.0.7-1~ubuntu.22.04~jammy | https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu jammy/stable amd6
5.安装
apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
6.添加镜像源加速
tee /etc/docker/daemon.json <<-'EOF'
{
"bip":"172.20.0.1/24",#更改子网(可选)
"registry-mirrors": ["https://kqh8****.mirror.aliyuncs.com"]
}
6.开启内核转发
cat <<EOF > /etc/sysctl.d/docker.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward=1
EOF
modprobe br_netfilter
sysctl -p /etc/sysctl.d/docker.conf
安装jkd
wget https://download.oracle.com/java/21/latest/jdk-21_linux-x64_bin.deb
dpkg -i jdk-21_linux-x64_bin.deb
root@ubuntu:~# java --version
java 21.0.2 2024-01-16 LTS
Java(TM) SE Runtime Environment (build 21.0.2+13-LTS-58)
Java HotSpot(TM) 64-Bit Server VM (build 21.0.2+13-LTS-58, mixed mode, sharing)root@ubuntu:/docker# ls
rabbitmq redis
root@ubuntu:/docker/redis# cat redis.conf
requirepass "Redis@123"
maxclients 10000
#如果要外网访问,请注释掉下面,或者修改为0.0.0.0,保险起见,也可以把protected-mode设置为no
bind 0.0.0.0
protected-mode no
#注意修改这里端口,根据你实际暴露端口情况配置
port 6379
tcp-backlog 511
timeout 0
tcp-keepalive 300
#注意这里要把后台运行设置为no,避免docker后台运行冲突
daemonize no
supervised no
pidfile /docker/redis/redis.pid
loglevel notice
databases 16
always-show-logo yes
save 900 1
save 300 10
save 60 10000
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename dump.rdb
#注意修改这里的目录为容器内目录,默认reids进来是在/data/目录
dir /data/
replica-serve-stale-data yes
replica-read-only yes
repl-diskless-sync no
repl-diskless-sync-delay 5
repl-disable-tcp-nodelay no
replica-priority 100
lazyfree-lazy-eviction no
lazyfree-lazy-expire no
lazyfree-lazy-server-del no
replica-lazy-flush no
#注意修改这里的配置,yes开启持久化,no关闭持久化
appendonly yes
dir /data/
appendfilename "appendonly.aof"
appendfsync everysec
no-appendfsync-on-rewrite no
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
aof-load-truncated yes
aof-use-rdb-preamble yes
lua-time-limit 5000
slowlog-log-slower-than 10000
slowlog-max-len 128
latency-monitor-threshold 0
notify-keyspace-events ""
hash-max-ziplist-entries 512
hash-max-ziplist-value 64
list-max-ziplist-size -2
list-compress-depth 0
set-max-intset-entries 512
zset-max-ziplist-entries 128
zset-max-ziplist-value 64
hll-sparse-max-bytes 3000
stream-node-max-bytes 4096
stream-node-max-entries 100
activerehashing yes
client-output-buffer-limit normal 0 0 0
client-output-buffer-limit replica 256mb 64mb 60
client-output-buffer-limit pubsub 32mb 8mb 60
hz 10
dynamic-hz yes
aof-rewrite-incremental-fsync yes
rdb-save-incremental-fsync yes
docker run -d -it -p 6379:6379 \
--name redis --privileged=true \
-v /docker/redis/redis.conf:/etc/redis/redis.conf \
-v /docker/redis/data:/data \
--restart=always redis \
redis-server /etc/redis/redis.conf
docker run -it -d -p 5672:5672 -p 15672:15672 --hostname my-rabbit --name rabbitmq \
-v /docker/rabbitmq/:/var/lib/rabbitmq \
-e RABBITMQ_DEFAULT_USER=admin \
-e RABBITMQ_DEFAULT_PASS=Rabbitmq@369 \
--restart=always rabbitmq:3.12-management