docker 安裝常用軟件命令集

docker的使用越來越廣泛,我們在日常開發(fā)中也經(jīng)常會用到,使用docker安裝一些常用的軟件是比較方便的,在安裝這些軟件的過程中,我們很難記住那些命令及配置,因此我把常用的一些軟件安裝命令記錄下來,在需要的時(shí)候方便使用,后續(xù)持續(xù)更新。

注意: -v掛載目錄在linux/mac與windows下有所不同,請自行修改。

1.安裝mysql

docker run -d  \
  -p 3306:3306 \
  --name mysql \
  --restart=always \
  -e TZ=Asia/Shanghai \
  -e MYSQL_ROOT_PASSWORD=123456 \
  -v /opt/docker/mysql/log:/var/log/mysql  \
  -v /opt/docker/mysql/data:/var/lib/mysql  \
  -v /opt/docker/mysql/conf:/etc/mysql/conf.d \
  mysql
  • 命令解釋:

    -d 后臺運(yùn)行
    -p 3306:3306 端口映射,宿主機(jī)端口:容器端口。
    --name mysql 指定該容器名稱,查看和進(jìn)行操作都比較方便。
    --restart=always 隨docker的啟動(dòng)而啟動(dòng)
    -e MYSQL_ROOT_PASSWORD 設(shè)置數(shù)據(jù)庫密碼
    -v 掛載目錄(宿主機(jī)目錄:容器目錄),規(guī)則與端口映射相同(注意:映射路徑需要根據(jù)自己的情況修改)。

2.安裝redis

docker run -d \
-p 6379:6379 \
--name redis \
--restart=always \
-v /data/redis/redis.conf:/etc/redis/redis.conf \
-v /data/redis/data:/data \
redis redis-server /etc/redis/redis.conf  --requirepass 123456  --appendonly yes 
  • 命令解釋

    -d 后臺運(yùn)行
    -p 6379:6379 端口映射,宿主機(jī)端口:容器端口。
    --name redis 指定該容器名稱,查看和進(jìn)行操作都比較方便。
    --restart=always 隨docker的啟動(dòng)而啟動(dòng)
    -v 掛載目錄,規(guī)則與端口映射相同。(注意redis需要先在宿主機(jī)目錄中新建一個(gè)redis.conf文件才能映射,配置內(nèi)容請參考下方)
    --requirepass 設(shè)置密碼(如果不需要密碼可以去掉此項(xiàng),也可以在配置文件中設(shè)置密碼)
    redis 表示啟動(dòng)redis鏡像
    redis-server /etc/redis/redis.conf 以配置文件啟動(dòng)redis,
    appendonly yes 開啟redis 持久化

  • redis.conf

#允許遠(yuǎn)程連接
#bind 127.0.0.1
# 注意在docker中運(yùn)行此項(xiàng)一定要為no,否則會失敗
daemonize no 
protected-mode no
appendonly yes  
# 密碼
# requirepass 123456 

3.安裝mongodb

docker run -itd \
--name mongo \
--restart=always \
-p 27017:27017 \
mongo --auth
  • 命令解釋

    -itd 以交互容器方式后臺運(yùn)行
    -p 27017:27017 端口映射,宿主機(jī)端口:容器端口。
    --name mongo 指定該容器名稱,查看和進(jìn)行操作都比較方便。
    --restart=always 隨docker的啟動(dòng)而啟動(dòng)

  • 接著使用以下命令進(jìn)入容器,添加用戶和設(shè)置密碼,并且嘗試連接。
docker exec -it mongo mongo admin
# 創(chuàng)建一個(gè)名為 admin,密碼為 123456 的用戶。
>  db.createUser({ user:'admin',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'},"readWriteAnyDatabase"]});
# 嘗試使用上面創(chuàng)建的用戶信息進(jìn)行連接。
> db.auth('admin', '123456')

4.安裝nginx

docker run -d \
--name nignx \
--restart=always \
-p 80:80 \
-v /docker/nginx/html:/usr/share/nginx/html \
-v /docker/nginx/nginx.conf:/etc/nginx/nginx.conf \
-v /docker/nginx/conf.d:/etc/nginx/conf.d \
-v /docker/nginx/logs:/var/log/nginx \
nginx
  • 命令解釋:

    -d 后臺運(yùn)行
    -p 80:80 端口映射,宿主機(jī)端口:容器端口。
    --name nginx 指定該容器名稱,查看和進(jìn)行操作都比較方便。
    --restart=always 隨docker的啟動(dòng)而啟動(dòng)
    -v 掛載目錄(宿主機(jī)目錄:容器目錄),規(guī)則與端口映射相同(注意:映射路徑需要根據(jù)自己的情況修改)。

5.安裝minio

docker run -d \
  -p 9000:9000 \
  --name minio \
  --restart=always \
  -v /mnt/data:/data \
  -e "MINIO_ROOT_USER=minio" \
  -e "MINIO_ROOT_PASSWORD=minio" \
  minio/minio server /data

新版

docker run \
  -p 9000:9000 \
  -p 9001:9001 \
  --name minio1 \
  -e "MINIO_ROOT_USER=AKIAIOSFODNN7EXAMPLE" \
  -e "MINIO_ROOT_PASSWORD=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY" \
  -v /mnt/data:/data \
  quay.io/minio/minio server /data --console-address ":9001"
  • 命令解釋:

    -d 后臺運(yùn)行
    -p 9000:9000 端口映射,宿主機(jī)端口:容器端口。
    --name nginx 指定該容器名稱,查看和進(jìn)行操作都比較方便。
    --restart=always 隨docker的啟動(dòng)而啟動(dòng)
    -v 掛載目錄(宿主機(jī)目錄:容器目錄),規(guī)則與端口映射相同(注意:映射路徑需要根據(jù)自己的情況修改)。
    -e "MINIO_ROOT_USER 用戶名
    -e "MINIO_ROOT_PASSWORD 密碼

6.安裝skywalking(使用默認(rèn)h2數(shù)據(jù)庫)

  • 安裝server(8.3.0-es6版本根據(jù)實(shí)際情況修改)
 docker run  -d \
  --name skywalking-oap \
  -p 1234:1234 \
  -p 11800:11800 \
  -p 12800:12800 \
  -e TZ=Asia/Shanghai \
  --restart always \
  apache/skywalking-oap-server:8.3.0-es6
  • 安裝ui(8.3.0和server版本要一致)
docker run -d --name skywalking-ui \
  --restart=always \
  -e TZ=Asia/Shanghai \
  -p 5000:8080 \
  --link skywalking-oap:skywalking-oap \
  -e SW_OAP_ADDRESS=skywalking-oap:12800 \
  apache/skywalking-ui:8.3.0 

7.安裝rabbitMQ

docker run -d --name rabbitmq1
 -e RABBITMQ_DEFAULT_USER=用戶名 
 -e RABBITMQ_DEFAULT_PASS=密碼
 -p 15672:15672 -p 5672:5672 rabbitmq:management

8.安裝ranchar-server

docker run --name rancher-server 
-d --privileged --restart=unless-stopped \
-p 8080:80 -p 446:443 \
 rancher/rancher:latest

9.安裝nacos/mysql(單機(jī)版)

docker run -d \
-e MODE=standalone \
-e SPRING_DATASOURCE_PLATFORM=mysql \
-e MYSQL_SERVICE_HOST=ip \
-e MYSQL_SERVICE_PORT=3306 \
-e MYSQL_SERVICE_USER=數(shù)據(jù)庫用戶名 \
-e MYSQL_SERVICE_PASSWORD=數(shù)據(jù)庫密碼 \
-e MYSQL_SERVICE_DB_NAME=數(shù)據(jù)庫名稱 \
-p 8848:8848 \
--restart=always \
--name nacos \
nacos/nacos-server

10. nacos集群(自行修改配置即可至少三個(gè)節(jié)點(diǎn)才能組成集群)

7848 端口用于節(jié)點(diǎn)選舉來確定集群領(lǐng)袖(Leader)
9848 1000 客戶端gRPC請求服務(wù)端端口,用于客戶端向服務(wù)端發(fā)起連接和請求
9849 1001 服務(wù)端gRPC請求服務(wù)端端口,用于服務(wù)間同步等

docker run -d \
--restart=always \
--name nacos1 \
-e MODE=cluster \
-e NACOS_SERVERS="172.27.1.x:8848 172.27.2.x:8848 172.27.3.x:8848" \
-e NACOS_SERVER_IP=172.27.1.x \
-e SPRING_DATASOURCE_PLATFORM=mysql \
-e MYSQL_SERVICE_HOST=數(shù)據(jù)庫ip \
-e MYSQL_SERVICE_PORT=3306 \
-e MYSQL_SERVICE_USER=用戶名 \
-e MYSQL_SERVICE_PASSWORD=密碼 \
-e MYSQL_SERVICE_DB_NAME=數(shù)據(jù)庫名稱\
-p 8848:8848 \
-p 7848:7848 \
-p 9848:9848 \
-p 9849:9849 \
nacos/nacos-server

未完待續(xù),后期更新!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容