推荐原文阅读:WSL2 + Docker安装及使用 csdn文章介绍
python 3.9
django == 3.2
docker是一个用来装应用的容器,就像杯子可以装水,笔筒可以放笔,书包可以放书,可以把hello word放在docker中,可以把网站放入docker中,可以把任何想得到的程序放在docker中.官方解释:开源,跨平台支持,Windows,macos,linux。【Docker】可以理解为集装箱,标准化。
为什么会这么快呢?都是用标准的方式把我们的程序运过来,下载过来,再用标准的方式把它运行起来,就可以做到只要在每台机器上都执行一两条命令,就可以让程序正常跑起来,并且不用担心有问题.
wsl 是适用于 Linux 的 Windows 子系统(英语:Windows Subsystem for Linux,简称WSL)。是一个为在Windows 10和Windows Server 2019上能够原生运行Linux二进制可执行文件(ELF格式)的兼容层,可让开发人员按原样运行 GNU/Linux 环境 - 包括大多数命令行工具、实用工具和应用程序 - 且不会产生传统虚拟机或双启动设置开销。
简单来说,以前想在windows中使用linux,需要安装vmware虚拟机,现在则不比这么麻烦了,直接安装linux子系统,秒开。更轻便,更快速
未达到系统要求,Windows 10官方提供链接:https://www.microsoft.com/zh-cn/software-download/windows10
点击该下载的软件直接按要求升级 windows系统
WSL2就是linux系统(windows里的linux系统)
命令: windows下win+r 运行输入CMD,输入以下命令:(推荐以管理员运行)
wsl -l -v # 查看当前wsl版本
命令: 执行wsl转化为wsl2
wsl --set-version Ubuntu-18.04 2
命令:将 WSL2 设置为默认版本
wsl --set-default-version 2
1.搜索中启动wsl图标命令窗口 或者 cmd中输入wsl 也能进入
docker官方文档安装教程 https://docs.docker.com/engine/install/ubuntu/
1.设置存储库:
更新apt包索引并安装包以允许apt通过 HTTPS 使用存储库:
命令1:
sudo apt-get update
命令2:
sudo apt-get install \
ca-certificates \
curl \
gnupg \
lsb-release
命令3:添加 Docker 的官方 GPG 密钥:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
命令4:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
安装Docker
$: sudo apt-get update
$: sudo apt-get install docker-ce docker-ce-cli containerd.io
测试Docker是否安装成功
$: sudo service docker start # 启动docker服务器
$: sudo docker run hello-world # docker是否运行
设置非root用户运行docker
$: sudo groupadd docker
$: sudo usermod -aG docker $USER
$: newgrp docker
为什么要安装docker-compose,安装后可以一条命令启动mysql和redis。
引用:https://blog.csdn.net/pushiqiang/article/details/78682323 查看相关docker-compose介绍
1.输入命令直接安装docker-compose:
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
2.输入命令:
sudo chmod +x /usr/local/bin/docker-compose
采用sudo curl -l … 命令执行会有报错: .UnicodeDecodeError: ‘utf-8’ codec can’t decode byte 0xb0 in position 24: invalid start byte。改用课程提供的文件替换
报错的原因是默认的mysql,redis不处理中文字符集的。
用记事本打开:docker-compose.yml 文件内容如下
version: "3"
services:
redis:
image: redis:5-alpine3.13
ports:
- 6379:6379
networks:
- dj-net
mysql:
image: nulls/mysql:5.7-cnf
ports:
- 3306:3306
volumes:
- /home/dj/docker_mnts/db_data/mysql:/var/lib/mysql
environment:
MYSQL_ROOT_PASSWORD: 123456
networks:
- dj-net
networks:
dj-net:
driver: bridge
命令:启动mysql
docker run -it --rm --network host nulls/mysql:5.7-cnf mysql -h 127.0.0.1 -u root -p
命令:启动redis
docker run -it --network host --rm redis:5-alpine3.13 redis-cli