Choerodon學習筆記1——環境搭建:微服務支撐元件部署(原始碼形式)
阿新 • • 發佈:2018-12-15
安裝Docker for Windows
- 首先確保能科學上網,且系統是
win10
專業版、教育版。 - 確保在
BIOS
中已經開啟了CPU
虛擬化,否則安裝完成後啟動Docker
會出現Hardware assisted virtualization and data execution protection must be enabled
報錯。點選“工作管理員”->"效能"可以檢視虛擬化是否被開啟,如未開啟,可以參考此處,如果已開啟,可直接進入下面的正式安裝步驟。
- 在https://www.docker.com/products/docker-desktop下載
Docker for Windows
- 執行可執行檔案,一路預設安裝即可。安裝過程中需要幾次重啟,安裝後啟動
Docker
會提示啟用Hyper-V
需要重啟。 - 開啟
git bash
,執行如下命令,如果顯示dokcer
的版本號,表示安裝成功。
$ docker -v
啟動Docker映象
- 新建
docker-compose.yaml
檔案,內容如下,可儲存到任意位置。
version: "3"
services:
zookeeper-0:
container_name: zookeeper-0
image: registry.cn-hangzhou.aliyuncs.com/choerodon- tools/zookeeper:3.4.10
hostname: zookeeper-0
environment:
- ZK_REPLICAS=1
- ZK_HEAP_SIZE=2G
- ZK_TICK_TIME=2000
- ZK_INIT_LIMIT=10
- ZK_SYNC_LIMIT=5
- ZK_MAX_CLIENT_CNXNS=60
- ZK_SNAP_RETAIN_COUNT=3
- ZK_PURGE_INTERVAL=1
- ZK_LOG_LEVEL=INFO
- ZK_CLIENT_PORT=2181
- ZK_SERVER_PORT=2888
- ZK_ELECTION_PORT=3888
ports:
- "2181:2181"
- "2888:2888"
- "3888:3888"
command:
- sh
- -c
- zkGenConfig.sh && exec zkServer.sh start-foreground
volumes:
- "./kafka/zk:/var/lib/zookeeper"
kafka-0:
container_name: kafka-0
image: registry.cn-hangzhou.aliyuncs.com/choerodon-tools/kafka:1.0.0
hostname: 127.0.0.1
depends_on:
- zookeeper-0
links:
- zookeeper-0
ports:
- "9092:9092"
command:
- sh
- -c
- "/opt/kafka/bin/kafka-server-start.sh config/server.properties \
--override zookeeper.connect=zookeeper-0:2181 \
--override log.dirs=/opt/kafka/data/logs \
--override broker.id=0 "
volumes:
- "./kafka/kafka:/opt/kafka/data"
mysql:
container_name: mysql
hostname: mysql
image: registry.cn-hangzhou.aliyuncs.com/choerodon-tools/mysql:5.7.17
ports:
- "3306:3306"
environment:
MYSQL_ROOT_PASSWORD: root
volumes:
- ./mysql/mysql_data:/var/lib/mysql
- ./mysql/mysql_db.cnf:/etc/mysql/conf.d/mysql_db.cnf
- 在
docker-compose.yaml
所在目錄,開啟git bash
執行如下命令:
$ docker-compose up -d
- 為確保三個映象都已啟動,可重複執行如上命令,直至出現下圖所示日誌:
- 若是映象無法啟動,可以嘗試重啟
Docker
,然後執行如上操作。如果還是不行,則需要刪除掉Docker
中原有的映象,再執行如上操作。刪除映象需先使用docker stop [映象名]
停止映象,再使用docker rmi [映象id]
刪除映象。 - 可通過命令
docker ps
或docker-compose ps
檢視容器中正在執行的映象,通過命令docker images
檢視下載的Docker
映象,通過命令docker-compose down
停止映象。可通過命令docker ps
或docker-compose ps
檢視容器中正在執行的映象,通過命令docker-compose down
停止映象。
MySQL資料庫
啟動MySQL伺服器
可通過如下命令:
$ docker run --name=mysqlTest -e MYSQL_ROOT_PASSWORD=root -d mysql
--name=mysqlTest
: 為容器指定一個名稱,此處為mysqlTest
-e MYSQL_ROOT_PASSWORD=root
:設定環境變數,此處為在啟動MySQL
的時候設定密碼為root
-d
: 後臺執行容器,並返回容器ID
mysql
:使用的Docker
映象
檢視MySQL的日誌
可通過如下命令:
$ docker logs mysql
連線MySQL伺服器
可通過如下命令:
$ docker exec -it mysqlTest mysql -u root -p
如果出現以下報錯
the input device is not a TTY. If you are using mintty, try prefixing th
e command with 'winpty'
則在上面命令前加上winpty
,即使用命令:
$ winpty docker exec -it mysqlTest mysql -u root -p
提示輸入密碼的時候,輸入剛剛建立的時候指定的密碼。
可通過$ ALTER USER 'root'@'localhost' IDENTIFIED BY '新密碼';
修改密碼。