目錄
安裝docker
docker安裝MySQL5.7.37
安裝MySQL
方式一:docker中MySQL時區調整
方式二:docker中MySQL時區調整
docker安裝MySQL8.0.27
docker安裝redis5.0.14
云服務器上安裝jdk1.8
安裝docker
1、先卸載docker,因為有一些服務器上存在已經安裝好的docker
sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine
如果之前沒有安裝過,出現的內容如下:
2、執行安裝yum-utils指令
sudo yum install -y yum-utils
3、配置docker的地址,就是指定repo所在地
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
4、安裝docker,中途遇到的讓你輸入y/n的,都輸入 y 就行。
sudo yum install docker-ce docker-ce-cli containerd.io
5、啟動docker
sudo systemctl start docker
6、查看docker版本號
docker -v
查看目前有哪些鏡像: docker images
說明目前是空的。
7、設置docker開機自動啟動
systemctl enable docker
8、重啟docker
sudo systemctl restart docker
9、配置阿里鏡像加速
sudo mkdir -p /etc/dockersudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://e515yx9g.mirror.aliyuncs.com"]
}
EOF
10、重啟docker后臺運行線程以及重啟容器服務:
sudo systemctl daemon-reloadsudo systemctl restart docker
這樣一來,后續拉取一些軟件的鏡像,就是從阿里云鏡像中拉取的了,速度也會非常快。
11、其他指令
# 查看鏡像
docker images# 刪除鏡像
docker rmi 7614ae9453d1
或者是
docker rmi redis:latest# 刪除容器中的鏡像
docker rm 容器id
docker安裝MySQL5.7.37
安裝MySQL
先拉取鏡像:
docker pull mysql:5.7.37
然后這里估計需要等待很長一段時間,看自己網速。
安裝完畢之后,使用docker images 查看鏡像。
0、添加初始化配置文件:(這一步可用,可不用,看自己需求)
# 創建文件夾
mkdir -p /docker/mysql/conf
# 編輯/填加配置文件
vim /docker/mysql/conf/my.cnf
# 在配置文件中加入以下語句
[client]
default_character_set=utf8
[mysql]
default-character-set=utf8
[mysqld]
collation_server=utf8_general_ci
character_set_server=utf8
1、運行掛載MySQL:
docker run -p 3306:3306 \
--privileged=true \
-v /home/mysql/log:/var/log/mysql \
-v /home/mysql/data:/var/lib/mysql \
-v /home/mysql/conf:/etc/mysql/conf.d \
-e MYSQL_ROOT_PASSWORD=root \
--restart=always \
--name mysql \
-d mysql5.7.37
指令解釋:
-
docker run: 運行一個容器,每個容器相互隔離,是獨立的運行環境,是一個完整的實例。
-
-p 3306:3306:把mysql容器自己的端口映射到虛擬主機,這樣我們才能訪問,這是端口映射。(左側是本地端口:右側是docker容器里的端口)
-
–name mysql:為MySQL容器取名。
-
-v:文件路徑的掛載。(數據庫文件,日志,配置文件)
2、啟動MySQL服務:docker start mysql
3、登錄MySQL實例 或者是 直接使用navicat連接查看是否可以連接成功也行。
docker exec -it mysql /bin/bash # 進入MySQL實例
mysql -uroot -proot # 登錄MySQL
方式一:docker中MySQL時區調整
注意:使用鏡像安裝的MySQL,可能MySQL的時區會與自己本地的時區不一致,所以需要自己檢查一下,一般來說,可能會被上海時間慢8個小時。
1、先查看目前MySQL的時間,是否與本地電腦一致
# 查看MySQL的容器Id
docker ps# 查看指定容器的當前時間,如果與上海時間一致,就不用管了,如果不一致的話,那就需要調整
docker exec -it 2剛剛查詢出來的MySQL容器id date
2、查看宿主機的時間是否正確
timedatectl
發現宿主機的時區是正常的,所以我們就可以直接讓MySQL的時間按照宿主機的時間來。
如果宿主機不是上海時區,那么就需要先調整宿主機的時區:使用 timedatectl 查看時區
使用指令修改為上海時區:
sudo timedatectl set-timezone Asia/Shanghai
再次查看宿主機的時區:timedatectl
3、調整MySQL的時區
# 進入MySQL容器中 mysql容器id可以使用 docker ps進行查詢
docker exec -it MySQL容器id bash# 使用 ln 命令創建時區鏈接,比如對于上海時區:
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime# 退出容器
exit# 重新查詢MySQL容器的時間是否設置成功
docker exec -it mysql容器id date# 然后再navicat中關閉這個數據庫的連接,然后重新連接,然后就可以了
方式二:docker中MySQL時區調整
直接在容器啟動的時候設置時區。
# 先查看MySQL的容器Id
docker ps # 設置時區
docker run -e TZ=Asia/Shanghai MySQL容器id# 停止MySQL容器
docker stop MySQL的容器Id或者是MySQL容器的名稱# 重新啟動
docker start MySQL的容器Id或者是MySQL容器的名稱# 驗證時區是否正確設置
docker exec -it MySQL的容器Id或者是MySQL容器的名稱 date
docker安裝MySQL8.0.27
1、docker pull mysql:8.0.27
2、檢查鏡像是否存在:docker images
3、創建準備掛載的文件夾,-p
選項,該選項的作用是當目錄已經存在時不報錯,而是以靜默方式跳過。
mkdir /home/mysql8/log -p
mkdir /home/mysql8/data -p
mkdir /home/mysql8/conf -p
mkdir /home/mysql8/mysql-files -p
4、啟動MySQL容器,這里自己指定自己的密碼,我們就指定為 root就行。
docker run -p 3306:3306 --name mysql \
-v /home/mysql8/log:/var/log/mysql \
-v /home/mysql8/data:/var/lib/mysql \
-v /home/mysql8/conf:/etc/mysql \
-v /home/mysql8/mysql-files:/var/lib/mysql-files \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:8.0.27 \
--character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
5、修改MySQL的配置文件
vim /home/mysql8/conf/my.cnf
添加如下內容:
[client]
port=3306
default_character_set=utf8mb4[mysql]
default_character_set=utf8mb4[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
skip-character-set-client-handshake # 忽略客戶端的字符集,使用服務器的設置
6、重啟MySQL容器
docker restart mysql
7、使用navicat進行連接MySQL
docker安裝redis5.0.14
1、拉取鏡像,提前創建配置文件,進行數據掛載
# 拉取指定版本的redis鏡像
docker pull redis:5.0.14# 提前創建配置redis配置文件存放處
mkdir -p /home/redis5.0.14/conf
touch /home/redis5.0.14/conf/redis.conf# 執行redis數據掛載
docker run -p 6379:6379 --name redis \
-v /home/redis5.0.14/data:/data \
-v /home/redis5.0.14/conf/redis.conf:/etc/redis/redis.conf \
-d redis:5.0.14 \
redis-server /etc/redis/redis.conf
如圖:
指令解釋:
-
用6379做好端口映射,用redis作為服務容器的名字
-
data和conf做好目錄映射
-
-d 后臺運行
-
指定配置文件運行redis-server
2、修改redis.conf? ?這里的redis.conf的位置就是我們第一步創建的redis.conf的位置
vim /home/redis5.0.14/conf/redis.conf
目前redis.conf中配置為空,所以數據無法持久化,我們可以使用aof或者rdb來進行持久化。添加如下內容:root是我們設置的密碼
requirepass root
appendonly yes
然后重新啟動:docker restart redis
如果不小心都創建了一個實例,可以使用下面的方式進行刪除:
3、為redis服務設置跟隨docker重新啟動:
docker update redis --restart=always
重新啟動容器:systemctl restart docker
然后使用docker ps -a 查詢容器中服務啟動狀態,看 status這個時間就知道了。
4、使用redis客戶端進行連接測試
云服務器上安裝jdk1.8
官網下載,但是需要有oracle賬號才可以進行下載,或者是從其他地方獲取到這個 jdk的Linux安裝包也行。
Java Downloads | Oraclehttps://www.oracle.com/java/technologies/downloads/#java8
1、把下載好的jdk安裝包上傳到服務器上,自己選擇一個文件夾上傳.gz的jdk文件,比如你把jdk上傳到 /user/java/ 文件夾下,然后你需要進入到/user/java/ 這個文件夾執行下面的解壓指令,解壓到指定的目錄/home/jdk/
tar -zxvf jdk-8u341-linux-x64.tar.gz -C /home/jdk/
2、使用 which java 可以查看java可執行文件的路徑,我們需要的是bin的上一級路徑,/home/jdk/jdk1.8.0_341
3、配置環境變量
# 配置環境變量
vim /etc/profile #輸入指令編輯etc/profile文件# 向文本最后插入以下幾行
export JAVA_HOME=/home/jdk/jdk1.8.0_341 # 剛剛使用which java獲取到的bin的上級路徑
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/Lib:${JRE_HOME}/Lib
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
export PATH=$PATH:${JAVA_PATH}# 保存這個profile文件 按esc進入指令模式 輸入 :wq 然后回車進行保存,如果不想保存可以使用 q! 然后回車# 刷新配置
source /etc/profile
?3、# 測試是否安裝成功? ?java -version