admin管理员组

文章数量:1626223

目录

  • 一、前言
  • 二、注意事项
  • 三、安装Docker for Windows
  • 四、下载 Ubuntu 基础镜像
  • 五、安装常用工具和 Python 环境
  • 六、配置 VIM
  • 七、提交镜像
  • 八、推送镜像到 Docker Hub 个人仓库

一、前言

        之前开发都是在 Windows 上装 VMWare,VMWare 上运行 Ubuntu,然后在 Ubuntu 里面做开发。但这样也不太方便,每次进入开发环境都要先启动 VMWare,再启动 Ubuntu,然后打开命令行窗口开始开发,而且有时候需要在宿主机和虚拟机之间来回切换,也很麻烦。

        最近想用 Windows 自带的 Hyper-V 虚拟机,在 windows 上利用 Docker 运行一个 Ubuntu 镜像,在容器里搭建 Python 开发环境;

这样既解决了问题,也解决了 VMware 虚拟机的不方便之处。完美!!!

好文章 记得收藏+点赞+关注额 !!!

---- Nick.Peng


二、注意事项

需要注意的是,Windows 上安装 Docker 对系统有以下的要求:

  • 需要支持 Hyper-V 的 Windows 版本,Hyper-V 目前仅在 Windows 10 之后的版本支持;

  • BIOS 里需要启用 Virtualization(虚拟化);

三、安装Docker for Windows

  • 安装程序可以从这里下载 Docker for Windows;

  • 安装完之后,运行 Docker for Windows;

  • Docker 运行后,可以在状态栏里看到有一个 Docker 小鲸鱼的 Logo;

  • 打开命终端令行窗口,输入命令docker --version查看 Docker 版本,如图;

四、下载 Ubuntu 基础镜像

  • docker hub上提供了很多 docker 镜像,我们以 ubuntu:16.04 为基础镜像,打造我们专属的 python 开发环境。运行以下命令拉取镜像:
    docker pull ubuntu:16.04
  • 下载完后,我们来查看一下本地的镜像,运行docker images,如图:

五、安装常用工具和 Python 环境

  • 我们用这个 Ubuntu 镜像启动一个容器,并进到容器内的bash,运行以下命令:
    docker run -it ubuntu:16.04 bash
    Re: 我们的这个镜像现在只是一个最基本的 ubuntu 的系统,里面很多工具都没有,如ping、ifconfig、wget、vim等,也没有python。接下来我们把这些一个一个都装上。

  • 更改 apt 源为163或者清华的镜像源
    修改 /etc/apt/sources.list 的内容为下面的内容:

    deb http://mirrors.163/ubuntu/ bionic main restricted universe multiverse
    deb http://mirrors.163/ubuntu/ bionic-security main restricted universe multiverse
    deb http://mirrors.163/ubuntu/ bionic-updates main restricted universe multiverse
    deb http://mirrors.163/ubuntu/ bionic-proposed main restricted universe multiverse
    deb http://mirrors.163/ubuntu/ bionic-backports main restricted universe multiverse
    deb-src http://mirrors.163/ubuntu/ bionic main restricted universe multiverse
    deb-src http://mirrors.163/ubuntu/ bionic-security main restricted universe multiverse
    deb-src http://mirrors.163/ubuntu/ bionic-updates main restricted universe multiverse
    deb-src http://mirrors.163/ubuntu/ bionic-proposed main restricted universe multiverse
    deb-src http://mirrors.163/ubuntu/ bionic-backports main restricted universe multiverse
    
  • 运行命令apt update,更新镜像源;

  • 安装ping,wget,ifconfig,vim等工具;
    apt install iputils-ping wget net-tools vim

  • 安装python3.6和pip,如图;
    sudo apt-get install python3-pip
    pip install --upgrade pip


六、配置 VIM

  • 安装完工具后,我们来配置一下vim。打开~/.vimrc文件,输入vim的配置。比如我的配置是这样的

    set ru
    syntax on
    set background=dark
    set sw=4
    set ts=4
    set tabstop=4
    set shiftwidth=4
    set expandtab
    filetype plugin on
    set autoindent
    set smartindent
    set number
    set viminfo='10,\"100,:20,%,n~/.viminfo
    function! ResCur()
        if line("'\"") <= line("$")
            normal! g`"
            return 1
        endif
    endfunction
    
    augroup resCur
        autocmd!
        autocmd BufWinEnter * call ResCur()
    augroup END
    
    highlight WhiteSpaces ctermbg=green guibg=#55aa55
    match WhiteSpaces /\s\+$/
    

好了,至此,我们的开发环境配置好了。

七、提交镜像

  • 为方便以后的使用,我们把这个配置好的容器打成一个新的镜像。在容器中执行 exit 退出。

  • 在命令行窗口输入docker ps -a,查看一下我们刚刚配置好的容器,如图:

  • 运行下面的命令,提交更改,将容器打包成一个新的镜像,如图
    docker commit a5fd118ed570 py0312/python3_dev:v1.0

  • 查看一下刚刚提交的本地镜像

    可以看到,现在我们本地有2个镜像了。下面一个是原始的 docker hub上的 ubuntu 镜像,上面一个就是我们自己定制的镜像。

  • 现在我们就可以基于我们定制的镜像,启动容器做开发了。启动容器很简单,只要运行
    docker run -it 1f6e4fbf7e7b bash
    小贴士: 这里也可以直接用pycharm 直接连接Docker启动容器。
    注意: 容器如果被删除了,其中的更改也会丢失。要保存容器中的更改,需要像上面这样把更改commit到镜像中。

八、推送镜像到 Docker Hub 个人仓库

为了开发方便起见,把上面生成的这个新镜像推送到我个人的 Docker Hub 仓库上,步骤如下:

  • 登录个人Docker hub,如图
    docker login --username=docker hub ID
  • 推送本地镜像到 Docker Hub 仓库
    docker push py0312/python3_dev:v1.0

本文标签: 镜像环境WindowsDocker