总结:Docker 是一个开源的容器化平台,旨在使开发、部署和运行应用程序的过程更加简单和高效。Docker 使用操作系统级虚拟化在单个主机上运行多个独立的容器。每个容器包含应用程序及其所有依赖项,确保在不同环境中具有一致的运行表现。
下面就是单独创建了一个python环境,只下载了requirements.txt这里的库,然后利用了这个python环境部署了一个应用程序myflaskapp.py。dockerfile文件确保所有人运行这个程序的环境一致。
1、安装
安装,使用下面链接即可,包括windows、centos、ubuntu
10分钟学会Docker的安装和使用_docker安装-CSDN博客
2、配置国内镜像加速
不配置会提示itime out超时错误
安装完后配置国内镜像加速,上面链接里也有,或者参照下面这个
docker配置镜像加速器的方法步骤_docker_脚本之家
3、案例入门
我是学习python编程、下面是一个python环境小案例入门:
Docker入门使用_python:3.10-slim-bookworm-CSDN博客
按照上面这个链接,执行到下面这命令报错
docker build -t myflaskapp .
报错提示如下:
明显就是从镜像拉不下来文件,但是我上面也配置了阿里云国内镜像,问了一下旁边十年开发经营的老工程师,试了一下发现是python版本问题,里面的dockerfile有行代码是下载
python:3.10.12-slim-bookworm
这个python环境,但是这个版本下载报错
解决方法:换个环境,这里从阿里云镜像网站中找到:python3:10版本
或者从下面这个网站中找
https://hub.docker.com/https://hub.docker.com/然后将Dockerfile代码
FROM python:3.12-slim-bookworm
改为
FROM python:3.10
tips:注意dockerfile中pip install代码自己要再加上-i 镜像源,不然下载特别慢,如下所示
RUN pip install --no-cache-dir -r /app/requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
再重新运行
docker build -t myflaskapp .
docker run -p 5000:5000 myflaskapp
发现运行成功:
四、遇到的bug
下面安装完Docker之后,使用Docker命令,如Docker version命令,报错:
ERROR: permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/info": dial unix /var/run/docker.sock: connect: permission denied 这种问题,通常是因为当前用户没有加入到Docker用户组所导致的。
解决方法:Docker提示permission denied错误的解决方案_docker_脚本之家