提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
前言
制作一个龙蜥环境下的django的docker镜像
一、下载安装docker
请自行百度参考链接 http://wed.xjx100.cn/news/151901.html?action=onClick
二、制作docker镜像
这里主要是在winows环境下制作docker镜像
1.拉取龙蜥镜像
代码如下(示例):
docker pull registry.openanolis.cn/openanolis/anolisos:8
2.后台运行龙蜥镜像安装python环境
2.1进入服务器安装必要环境
docker run -it registry.openanolis.cn/openanolis/anolisos:8
yum install openssl-devel gcc make mysql-devel gcc-devel python-devel
2.2安装openssl
sh-4.4# cd /data
sh-4.4# wget https://openssl.org/source/old/1.1.1/openssl-1.1.1t.tar.gz
sh-4.4# tar -zxvf openssl-1.1.1t
sh-4.4#./config --prefix=/usr/local/openssl
sh-4.4# make && make install
配置软连接
sh-4.4#ln -sf /usr/local/openssl/bin/openssl /usr/bin/openssl
sh-4.4#ln -sf /usr/local/openssl/include/openssl /usr/include/openssl
sh-4.4#ln -sf /usr/local/openssl/lib/libssl.so /usr/lib64/libssl.so
sh-4.4#echo "/usr/local/openssl/lib" >> /etc/ld.so.conf
sh-4.4#ldconfig -v
查看是否安装成功
sh-4.4#openssl version
2.3安装python
sh-4.4# cd /data
sh-4.4# wget https://www.python.org/ftp/python/3.10.13/Python-3.10.13.tgz
sh-4.4# tar -zxvf Python-3.10.13
sh-4.4# cd Python-3.10.13
sh-4.4# LDFLAGS="${LDFLAGS} -Wl,-rpath=/usr/local/openssl/lib" ./configure --prefix=/usr/local/python3/ --with-openssl=/usr/local/openssl --enable-loadable-sqlite-extensions --with-openssl-rpath=auto
sh-4.4# make install
添加python3的软链接
sh-4.4# ln -sf /usr/local/python3/bin/python3.10 /usr/bin/python
配置环境变量
sh-4.4# echo 'export PATH=/usr/local/python3/bin:$PATH' >>~/.bashrc
查看python版本
sh-4.4#python -V
Python 3.10.13
龙蜥环境下可能会导致yum不能使用
sh-4.4# find / -name 'libcrypto.so.1.1'
/usr/lib64/libcrypto.so.1.1
/data/openssl-1.1.1t/libcrypto.so.1.1
sh-4.4# mv /usr/local/openssl/lib/libcrypto.so.1.1 /usr/local/openssl/lib/libcrypto.so.1.1_bak
linux环境下可能会导致yum不能使用修改配置文件
vim /usr/bin/yum
把#! /usr/bin/python修改为#! /usr/bin/python2
vim /usr/libexec/urlgrabber-ext-down
把#! /usr/bin/python 修改为#! /usr/bin/python2
vim /usr/bin/yum-config-manager “#!/usr/bin/python” 改为 "#!/usr/bin/python2
2.3安装pip3
sh-4.4#yum install python3-pip
sh-4.4#ln -sf /usr/local/python3/bin/pip3 /usr/bin/pip3
2.4将容器重新打包成镜像
- docker commit 容器id 镜像名称:标签
2.5制作dockerfile文件
FROM python:2
WORKDIR /test
ADD ./test/ .
RUN pip3 install -r requirements.txt -i http://mirrors.aliyun.com/pypi/simple --trusted-host mirrors.aliyun.com
CMD ["python", "manage.py","runserver","0.0.0.0:8000"]
2.6运行容器
docker run -d -p 8000:8000 --name=test -v E:\test:/test 镜像id
三、可能会遇到的问题
ImportError: libGL.so.1: cannot open shared object file: No such file or directory
解决方案 :pip3 install opencv-python-headless
You need Perl 5.
解决方案 :yum -y install perl
总结
简单记录一下制作docker过程