服务器太贵?没有linux环境?
没关系,使用docker吧!利用docker的庞大镜像资源库搭建整个运行环境,体验开发测试部署一体化的快感!
docker的优势
可以轻易地让几十个服务在docker中跑起来
docker可以让开发者更加贴近生产环境,便于测试,同一个镜像可以利用在正式和测试环境节约资源
docker可以将每个应用隔离起来,可以运行多个业务。
docker的安全性极具保障。
与 vm 相比 新建一个容器不需要加载操作系统内核,虚拟机加载GUest OS 分钟级别,docker直接利用宿主机的操作系统,秒级
1. 下载docker for windows
https://www.docker.com/products/docker-desktop
最新版本需要win10专业版及以上,提示安装不了的建议使用windows升级
2. 安装完成后
按照提示执行1/2/3/4步骤,如果遇到下载不了的问题需要配置镜像
这里可以在 阿里云docker镜像 创建后将 url 复制到 docker 的 setting 设置里面
Docker Engine
{
"registry-mirrors": [
"https://docker.mirror.ustc.edu.cn", // ustc大学镜像
],
"insecure-registries": ["docker.mirror.ustc.edu.cn"],
"debug": false,
"experimental": false,
"features": {
"buildkit": true
},
"builder": {
"gc": {
"enabled": true,
"defaultKeepStorage": "20GB"
}
}
}
3. 尝试安装mysql镜像
container容器创建好以后,尝试安装mysql镜像
- 去到 https://hub.docker.com/_/mysql/ 尝试使用指令安装( tips 镜像基本都可以在 https://hub.docker.com/ 域下找到)
$ docker run --name mysql_1 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7.35
- 命令执行成功后使用
docker ps
可以看到除了初始的docker-tutorial 我们的mysql镜像也已经启动了! - 运行
$ sudo docker exec -it mysql_1 bash
(也可以在客户端直接在应用上点击cli)我们就进入了 mysql_1 这个镜像 - 执行
my sql -u root -p
就可以进入 mysql 啦! show databases;
可以看到确实是个货真价实的初始mysql数据库- 接下来我们就可以愉快的安装其他应用了 同上~
4. 尝试安装nginx
$ docker run --name nginx_1 -d nginx:1.21.1
这里/some/content
用来映射到nginx的html文件入口 注意:这里必须为绝对路径且 windows 需要 //some/content
,例如:
$ docker run --name nginx_1 -v //g/personal-webSite/build:/usr/share/nginx/html:ro -d -p 8080:80 nginx:1.21.1
# //g/personal-webSite/build => 入口指向 g盘xx/build文件夹下的 *.html
docker run --name nginx-test -p 8080:80 -d nginx
命令参数说明:
- –name nginx-test:容器名称。
- -p 8080:80: 端口进行映射,将本地8080端口映射到容器内部的80端口。
- -d nginx: 设置容器在后台一直运行。
具体的安装配置步骤可以移至 linux 安装, 那里详细介绍了配置步骤 包含 ssl 和 http强转https