linux安裝docker配置其他方式
更新時間:2026年01月05日 17:14:42 作者:兔子先生°
文章介紹了如何安裝和配置多種常用軟件,如Docker、Redis、Nginx、Zookeeper、Kafka、ElasticSearch和MySQL,并提供了詳細的配置步驟和命令
1. 安裝docker
準備
更新yum
yum -y update
安裝docker所需軟件包
yum install -y yum-utils device-mapper-persistent-data lvm2
設置阿里云鏡像倉庫
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
安裝docker
yum install docker-ce
配置鏡像加速
可以都加上
- 科大鏡像:https://docker.mirrors.ustc.edu.cn/
- 網(wǎng)易:https://hub-mirror.c.163.com/
- 阿里云:https://<你的ID>.mirror.aliyuncs.com
- 七牛云加速器:https://reg-mirror.qiniu.com
{
“registry-mirrors”: [
“https://ung2thfc.mirror.aliyuncs.com”,
“https://registry.docker-cn.com”,
“http://hub-mirror.c.163.com”,
“https://docker.mirrors.ustc.edu.cn”
]
}sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["你的加速地址"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
啟動docker
啟動 systemctl start docker 設置開機啟動 systemctl enable docker
卸載docker
查詢安裝包
yum list installed | grep docker
刪除安裝包
yum remove docker*
刪除鏡像容器
rm -rf /var/lib/docke
2. 安裝redis
拉取redis鏡像
docker pull redis
查看docker鏡像
docker images
創(chuàng)建容器并配置運行
創(chuàng)建宿主機目錄 mkdir /usr/local/dockersoft/redis 創(chuàng)建持久化文件目錄 mkdir /usr/local/dockersoft/redis/data 將原redis.conf拷貝到這個redis目錄下,修改redis.conf配置文件 #bind 127.0.0.1 # 注釋掉,即允許遠程連接 protected-mode no #啟用保護模式 appendonly yes #持久化 requirepass 123456 #密碼
docker run -itd --name redis -v /usr/local/dockersoft/redis/redis.conf:/etc/redis.conf -v /usr/local/dockersoft/redis/data:/data -p 6379:6379 redis redis-server /etc/redis.conf
- 6379:第一個6379是遠程指定的端口
- –name:給容器起一個名
- -p:端口映射 宿主機:容器
- -v:掛載自定義配置 自定義配置:容器內(nèi)部配置
- -d:后臺運行
- redis-server --appendonly yes: 在容器執(zhí)行redis-server啟動命令,并打開redis持久化配置
- -e設置環(huán)境變量參數(shù),如: -e require-pass=123456
3. 安裝nginx
拉取鏡像
docker pull nginx
創(chuàng)建本地將要掛載的目錄
mkdir /usr/local/dockersoft/nginx cd /usr/local/dockersoft/nginx mkdir logs conf html
啟動容器
docker run -itd --name nginx -p 80:80 -v /usr/local/dockersoft/nginx/html:/usr/share/nginx/html:ro -v /usr/local/dockersoft/nginx/logs:/var/log/nginx -v /usr/local/dockersoft/nginx/conf/nginx.conf:/etc/nginx/nginx.conf:ro nginx
4. 安裝zookeeper
拉取鏡像
docker pull zookeeper
啟動容器
docker run -d -p 2181:2181 --name some-zookeeper --restart always zookeeper
5.安裝kafka和zookeeper
docker pull wurstmeister/zookeeper docker pull wurstmeister/kafka docker run -d --name zookeeper-12181 -p 12181:2181 -t wurstmeister/zookeeper docker run -d --name kafka-19092 -p 19092:9092 --link zookeeper-wurstmeister-12181:zookeeper -e KAFKA_BROKER_ID=1 -e HOST_IP=101.33.245.109 -e KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://101.33.245.109:9092 -e KAFKA_ADVERTISED_HOST_NAME=101.33.245.109 -t wurstmeister/kafka
部分參數(shù)含義:
- KAFKA_BROKER_ID=1 kafka在集群中的唯一標識
- KAFKA_ZOOKEEPER_CONNECT=zookeeper:12181 監(jiān)聽zookeeper的地址
- KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.65.7:19092 kafka服務器的地址
進入容器
docker exec -it ${CONTAINER ID} /bin/bash
進入kafka的bin目錄下
cd /opt/kafka_2.13-2.8.1/bin
創(chuàng)建topic
./kafka-topics.sh --create --zookeeper zookeeper:2181 --replication-factor 1 --partitions 1 --topic mykafka
查看topic信息-first:topic名
./kafka-topics.sh --zookeeper 192.168.233.129:12181 --describe --topic first
運行生產(chǎn)者
./kafka-console-producer.sh --broker-list localhost:9092 --topic mykafka
消費topic
./kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9092 --from-beginning --topic mykafka
6.安裝ElasticSearch
拉取鏡像并準備工作
docker pull elasticsearch:7.17.6 docker images # 創(chuàng)建掛載文件夾 mkdir /usr/local/elasticsearch/config mkdir /usr/local/elasticsearch/data mkdir /usr/local/elasticsearch/plugins # 創(chuàng)建配置文件 vim /usr/local/elasticsearch/config/elasticsearch.yml #配置yml文件 http.host: 0.0.0.0 http.cors.enabled: true http.cors.allow-origin: "*" http.cors.allow-headers: Authorization xpack.security.enabled: true xpack.security.transport.ssl.enabled: true # 設置掛載目錄權(quán)限 chmod -R 777 /usr/local/elasticsearch
分詞器(可選)
- ik分詞器地址:https://github.com/medcl/elasticsearch-analysis-ik
- 下載和ElasticSearch版本相同的分詞器,將分詞器目錄放到plugins下,并修改文件夾名稱為“ik”
- 或者在容器內(nèi)使用命令
./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.17.6/elasticsearch-analysis-ik-7.17.6.zip
啟動容器
docker run --name elasticsearch --restart=always -p 9200:9200 -p 9300:9300 \ -e "discovery.type=single-node" \ -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \ -v /usr/local/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \ -v /usr/local/elasticsearch/data:/usr/share/elasticsearch/data \ -v /usr/local/elasticsearch/plugins:/usr/share/elasticsearch/plugins \ -d elasticsearch:7.17.6
配置賬號密碼
# 進入容器 docker exec -it elasticsearch /bin/bash # bin目錄下,需要輸入多次,有都多個賬號 ./bin/elasticsearch-setup-passwords interactive
安裝MySQL
docker run -p 3306:3306 --name mysql -v /opt/docker/mysql/conf:/etc/mysql/conf.d -v /opt/docker/mysql/logs:/logs -v /opt/docker/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:latest
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
使用Docker部署 spring-boot maven應用的方法
本篇文章主要介紹了使用Docker部署 spring-boot maven應用的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-08-08
使用Docker搭建Vsftpd 的 FTP 服務的詳細過程
FTP 基礎FTP 需要兩個端口,一個是數(shù)據(jù)端口,一個是控制端口,這篇文章主要介紹了使用Docker搭建Vsftpd的FTP服務,需要的朋友可以參考下2022-08-08

