docker 入门到放弃2----拉取镜像,安装常用环境tmux、python3以及常用web模块,上传。

目录

  1. docker 入门到放弃1----安装、注册、使用并上传自定义镜像
  2. docker 入门到放弃2----拉取镜像,安装常用环境并上传
  3. docker 入门到放弃3-- docker安装mysql8.0并启动

先停止和删除所有之前实验的容器:

  docker stop $(docker ps -a -q)   // stop停止所有容器

  docker rm $(docker ps -a -q)   // remove删除所有容器

  docker images | awk '{print $3}' | xargs docker rmi  // 删除所有镜像

  docker rmi $( docker images -q ) // 删除所有镜像

搜索自己并拉取,还是可以找到的:

  docker search antony314

 docker pull antony314/centos:v1

 

必须要加:v1,因为不加是默认tag :latest,而我没有latest版本的镜像:

用这个镜像开启容器并开始继续鼓捣:

[root@小林のCentos 12:08:59 ~]>101$ docker run -t -i  antony314/centos:v1  /bin/bash
[root@7cc9c057d099 /]# cd /root/tools/

进入tools之后继续wget 最新的python,打算采用源码安装,解压并进入:

wget https://www.python.org/ftp/python/3.7.2/Python-3.7.2.tgz
tar -vzxf Python-3.7.2.tgz
cd Python-3.7.2

提前安装openssl,gcc和'_ctypes'的依赖,并安装sqlite:

yum install openssl openssl-devel 
yum install gcc
yum install libffi-devel
yum install sqlite-devel

开始安装python:

./configure --prefix=/usr/local/python37 --with-ssl --enable-optimizations
make
make install

引用 : what does --enable-optimizations do while compiling python?

安装完成,同时直接安装上了pip 和 setuptools:

 

网络问题,连接中断,需要重新进入刚刚的容器:

[root@小林のCentos 14:55:27 ~]>3$ docker ps -a
CONTAINER ID        IMAGE                 COMMAND             CREATED             STATUS              PORTS               NAMES
7cc9c057d099        antony314/centos:v1   "/bin/bash"         3 hours ago         Up 3 hours                              blissful_feistel
[root@小林のCentos 14:55:38 ~]>4$ docker attach 7cc9c057d099
[root@7cc9c057d099 Python-3.7.2]# 

设置软链接:

ln -s /usr/local/python37/bin/python3.7 /usr/bin/python3
ln -s /usr/local/python37/bin/pip3.7 /usr/bin/pip3       

 至此python3.7安装,一切OK。

这里打算先打包一波:

exit
docker commit -m="v1.1 update from of-centos add python3.7" -a="antony" 7cc9c057d099 antony314/centos:v1.1
[root@小林のCentos 15:30:36 ~]>6$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
antony314/centos    v1.1                50b5b5058224        54 seconds ago      833MB
antony314/centos    v1                  47dd3157ad26        23 hours ago        273MB
[root@小林のCentos 15:31:30 ~]>7$ docker push antony314/centos:v1.1

可以看到新上传的镜像已经很大了。查看在hub私有库上的大小:

继续,安装flask和相关东西,同时看看能不能精简大小:

[root@小林のCentos 15:55:39 ~]>8$ docker ps -a
CONTAINER ID        IMAGE                 COMMAND             CREATED             STATUS                      PORTS               NAMES
7cc9c057d099        antony314/centos:v1   "/bin/bash"         4 hours ago         Exited (0) 33 minutes ago                       blissful_feistel
[root@小林のCentos 16:01:28 ~]>9$ docker attach 7cc9c057d099
You cannot attach to a stopped container, start it first
[root@小林のCentos 16:01:40 ~]>10$ docker start 7cc9c057d099                                                                                                                             
7cc9c057d099
[root@小林のCentos 16:02:24 ~]>11$ docker attach 7cc9c057d099                                                                                                                            
[root@7cc9c057d099 /]# pip3 install flask flask_login pymysql sqlalchemy requests pandas                                                                                                 
Collecting flask
  Downloading https://files.pythonhosted.org/packages/7f/e7/08578774ed4536d3242b14dacb4696386634607af824ea997202cd0edb4b/Flask-1.0.2-py2.py3-none-any.whl (91kB)
    100% |████████████████████████████████| 92kB 601kB/s 
Collecting flask_login
  Downloading https://files.pythonhosted.org/packages/c1/ff/bd9a4d2d81bf0c07d9e53e8cd3d675c56553719bbefd372df69bf1b3c1e4/Flask-Login-0.4.1.tar.gz
Collecting pymysql
  Downloading https://files.pythonhosted.org/packages/ed/39/15045ae46f2a123019aa968dfcba0396c161c20f855f11dea6796bcaae95/PyMySQL-0.9.3-py2.py3-none-any.whl (47kB)
    100% |████████████████████████████████| 51kB 25.3MB/s 
Collecting sqlalchemy
  Downloading https://files.pythonhosted.org/packages/05/d2/17fb194f4ae83577258ea1d81da3d5d5643f4957fa14fd0261d78d648bf5/SQLAlchemy-1.2.16.tar.gz (5.7MB)
    100% |████████████████████████████████| 5.7MB 4.3MB/s 
Collecting requests
  Downloading https://files.pythonhosted.org/packages/7d/e3/20f3d364d6c8e5d2353c72a67778eb189176f08e873c9900e10c0287b84b/requests-2.21.0-py2.py3-none-any.whl (57kB)
    100% |████████████████████████████████| 61kB 29.1MB/s 
Collecting pandas
  Downloading https://files.pythonhosted.org/packages/67/a7/12261a51ac2e7be4c698ca27cbe364ca5f16d64999456ee47ea8c7b44417/pandas-0.23.4-cp37-cp37m-manylinux1_x86_64.whl (8.8MB)
    100% |████████████████████████████████| 8.8MB 3.1MB/s 
Collecting itsdangerous>=0.24 (from flask)
  Downloading https://files.pythonhosted.org/packages/76/ae/44b03b253d6fade317f32c24d100b3b35c2239807046a4c953c7b89fa49e/itsdangerous-1.1.0-py2.py3-none-any.whl
Collecting click>=5.1 (from flask)
  Downloading https://files.pythonhosted.org/packages/fa/37/45185cb5abbc30d7257104c434fe0b07e5a195a6847506c074527aa599ec/Click-7.0-py2.py3-none-any.whl (81kB)
    100% |████████████████████████████████| 81kB 38.3MB/s 
Collecting Jinja2>=2.10 (from flask)
  Downloading https://files.pythonhosted.org/packages/7f/ff/ae64bacdfc95f27a016a7bed8e8686763ba4d277a78ca76f32659220a731/Jinja2-2.10-py2.py3-none-any.whl (126kB)
    100% |████████████████████████████████| 133kB 45.6MB/s 
Collecting Werkzeug>=0.14 (from flask)
  Downloading https://files.pythonhosted.org/packages/20/c4/12e3e56473e52375aa29c4764e70d1b8f3efa6682bef8d0aae04fe335243/Werkzeug-0.14.1-py2.py3-none-any.whl (322kB)
    100% |████████████████████████████████| 327kB 41.1MB/s 
Collecting chardet<3.1.0,>=3.0.2 (from requests)
  Downloading https://files.pythonhosted.org/packages/bc/a9/01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8/chardet-3.0.4-py2.py3-none-any.whl (133kB)
    100% |████████████████████████████████| 143kB 44.8MB/s 
Collecting idna<2.9,>=2.5 (from requests)
  Downloading https://files.pythonhosted.org/packages/14/2c/cd551d81dbe15200be1cf41cd03869a46fe7226e7450af7a6545bfc474c9/idna-2.8-py2.py3-none-any.whl (58kB)
    100% |████████████████████████████████| 61kB 29.4MB/s 
Collecting certifi>=2017.4.17 (from requests)
  Downloading https://files.pythonhosted.org/packages/9f/e0/accfc1b56b57e9750eba272e24c4dddeac86852c2bebd1236674d7887e8a/certifi-2018.11.29-py2.py3-none-any.whl (154kB)
    100% |████████████████████████████████| 163kB 45.5MB/s 
Collecting urllib3<1.25,>=1.21.1 (from requests)
  Downloading https://files.pythonhosted.org/packages/62/00/ee1d7de624db8ba7090d1226aebefab96a2c71cd5cfa7629d6ad3f61b79e/urllib3-1.24.1-py2.py3-none-any.whl (118kB)
    100% |████████████████████████████████| 122kB 47.4MB/s 
Collecting numpy>=1.9.0 (from pandas)
  Downloading https://files.pythonhosted.org/packages/3d/10/62224c551acfd3a3583ad16d1e0f1c9e9c333e74479dc51977c31836119c/numpy-1.16.0-cp37-cp37m-manylinux1_x86_64.whl (17.3MB)
    100% |████████████████████████████████| 17.3MB 1.8MB/s 
Collecting python-dateutil>=2.5.0 (from pandas)
  Downloading https://files.pythonhosted.org/packages/74/68/d87d9b36af36f44254a8d512cbfc48369103a3b9e474be9bdfe536abfc45/python_dateutil-2.7.5-py2.py3-none-any.whl (225kB)
    100% |████████████████████████████████| 235kB 45.0MB/s 
Collecting pytz>=2011k (from pandas)
  Downloading https://files.pythonhosted.org/packages/61/28/1d3920e4d1d50b19bc5d24398a7cd85cc7b9a75a490570d5a30c57622d34/pytz-2018.9-py2.py3-none-any.whl (510kB)
    100% |████████████████████████████████| 512kB 37.4MB/s 
Collecting MarkupSafe>=0.23 (from Jinja2>=2.10->flask)
  Downloading https://files.pythonhosted.org/packages/e4/c4/adcc2d6f2ac2146cc04e076f14f1006c1de8e1e747fa067668b6573000b8/MarkupSafe-1.1.0-cp37-cp37m-manylinux1_x86_64.whl
Collecting six>=1.5 (from python-dateutil>=2.5.0->pandas)
  Downloading https://files.pythonhosted.org/packages/73/fb/00a976f728d0d1fecfe898238ce23f502a721c0ac0ecfedb80e0d88c64e9/six-1.12.0-py2.py3-none-any.whl
Installing collected packages: itsdangerous, click, MarkupSafe, Jinja2, Werkzeug, flask, flask-login, pymysql, sqlalchemy, chardet, idna, certifi, urllib3, requests, numpy, six, python-dateutil, pytz, pandas
  Running setup.py install for flask-login ... done
  Running setup.py install for sqlalchemy ... done
Successfully installed Jinja2-2.10 MarkupSafe-1.1.0 Werkzeug-0.14.1 certifi-2018.11.29 chardet-3.0.4 click-7.0 flask-1.0.2 flask-login-0.4.1 idna-2.8 itsdangerous-1.1.0 numpy-1.16.0 pandas-0.23.4 pymysql-0.9.3 python-dateutil-2.7.5 pytz-2018.9 requests-2.21.0 six-1.12.0 sqlalchemy-1.2.16 urllib3-1.24.1

pip装了flask等一些常用模块,小几十M应该是有了的,再删除刚刚的安装目录看能不能起到精简大小的作用:

rm -rf /root/tools/Python-3.7.2* 

反而比V1.1更轻了,看起来删除不必要的文件去让images变小想必还是有效果的:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值