目录
前言
最近项目要上线喽,经理让我自己在电脑上搭建docker练练手,虽然连docker都没弄明白,也只能硬着头皮慢慢搞,不过确实对docker理解加深了,这里先记录一下,后期再整理吧
Docker安装:
windows10专业版、企业版、教育版都可以安装docker for windows,这个应该是比较好的,官方是说是windows的最好选择,但是我按照网上的教程装了好几遍,运行一直有问题,每次都不一样,只能放弃退而求其次了。。那就是安装docker toolbox
下面简单记录了一下安装流程:
1.以前安装过docker的话可能要在控制面板->程序和功能->启用或关闭windows功能->去掉Hyper-V后确定保存
2.git下载 下载exe程序或者阿里镜像下载
3.安装Docker Toolbox,默认下一步即可,弹出东西也都点安装
4.安装完成后,新增图标
5.双击Docker Quickstart Terminal图标,启动一个终端,如果原本有安装git的话要修改快捷方式属性中的bash.exe路径
6.出现docker Logo
7.在命令行中输入
docker run hello-world
并按回车键出现Hello from Docker成功
到这里docker就算安装成功了!
拉取镜像
安装成功之后就可以拉取镜像了,这里要先写好docker-compose.yml文件
version: "3"
services:
mariadb:
image: mariadb
container_name: mariadb
restart: always
privileged: true
ports:
- "3306:3306"
volumes:
- D:/docker/mariadb:/var/lib/mysql
environment:
TIMEZONE : Asia/Shanghai
MYSQL_ROOT_PASSWORD: 123456
MYSQL_DATABASE: public
command:
--innodb-flush-method=fsync
--character-set-server=utf8mb4
--collation-server=utf8mb4_unicode_ci
redis:
image: redis
container_name: redis
restart: always
privileged: true
ports:
- "6379:6379"
volumes:
- D:/docker/redis:/var/lib/redis
command: 'redis-server --requirepass "123456" --appendonly yes'
vendor:
image: ******** #镜像地址,不方便显示
container_name: vendor
restart: always
privileged: true
depends_on:
- mariadb
- redis
links:
- mariadb:mysql
- redis:redis
ports:
- "80:80"
volumes:
- D:/docker/store/config:/opt/config/
- D:/docker/store/files:/opt/files/
这其中包括了三个要拉取的镜像:mariadb、redis、vendor(公司项目在阿里云镜像仓库中的镜像)
写好之后将yml文件放到安装路径就可以拉取镜像啦
docker-compose.exe pull
拉取没有权限的话需要命令登录
winpty docker login
拉取完成后可以查看已有镜像
docker images
启动容器
docker-compose.exe up -d
启动之后可以看当前已有容器
docker ps
这里可以用数据库连接工具分别测试一下redis和mysql是否都可以连接成功了,主机IP填docker默认IP 192.168.99.100即可
设置容器基础配置
这一步有需要的话可以设置一下
这里简单设置一下数据库
1.设置数据库 max_connections 和 max_allowed_packet
进入mariadb中
docker exec -it mariadb bash
mysql -u root -p123456
设置最大链接个数
set global max_connections = 3600;
set global max_allowed_packet = 2*1024*1024*10
查看修改后的数据
show VARIABLES like '%max_allowed_packet%';
show variables like '%max_connections%';
####退出数据库和容器
exit``````exit
2.设置redis服务器与客户端保活参数
进入redis中
docker exec -it redis bash
redis-cli
auth 123456
设置tcp-keepalive参数
config set tcp-keepalive 50
最后同样退出
这里就差不多结束了!