美文网首页首页烁今诗文集首页之约
用Docker创建一个常用的ubuntu容器(配置Dockerf

用Docker创建一个常用的ubuntu容器(配置Dockerf

作者: 庸碌无为 | 来源:发表于2018-08-12 12:30 被阅读7次

为日后使用方便,特此记录

一、 普通方法创建容器

  1. 用Docker的ubuntu镜像创建一个容器
docker run -d --name=testUbuntu ubuntu tail -f /dev/null
  1. 进入容器
docker exec -it testUbuntu bash
  1. 更新apt-get
apt-get update
  1. 安装需要的东西
#安装常用工具
apt-get install -y vim
apt-get install -y tree
apt-get install -y net-tools
#安装nginx
apt-get install -y nginx
#安装Python2
apt-get install -y python2.7
#安装Python3
apt-get install -y python3.4
#安装pip
apt-get install -y python-pip python-dev build-essential
#安装supervisor
apt-get install -y supervisor
#安装mysql
apt-get install -y mysql-server
apt install -y mysql-client
apt install -y libmysqlclient-dev
#检测安装是否成功
netstat -tap | grep mysql
  1. pip安装所需
pip install Django==1.11.2
pip install MySQL-python==1.2.5
pip install django-suit==0.2.25
pip install xlwt==1.3.0

二、 Dockerfile方法创建容器

也可将上面的命令做成Dockerfile,内容如下:

FROM ubuntu:latest

#注意,换行用TAB

RUN apt-get update \
    && apt-get install -y vim \
    && apt-get install -y tree \
    && apt-get install -y net-tools \
    && apt-get install -y nginx \
    && apt-get install -y python2.7 \
    && apt-get install -y python-pip python-dev build-essential \
    && apt-get install -y supervisor \
    && apt-get install -y mysql-server \
    && apt install -y mysql-client \
    && apt install -y libmysqlclient-dev \
    && pip install Django==1.11.2 \
    && pip install MySQL-python==1.2.5 \
    && pip install django-suit==0.2.25 \
    && pip install xlwt==1.3.0

然后执行

docker build -t NAME:TAG .
#如:docker build -t test:v1 . 是test镜像,v1的tag
#注意!
#1. 先执行docker login
#2. 执行build命令时,要在一个空文件夹下(如果不是空文件夹要添加.dockerignore文件)
#3. 要在有Dockerfile文件下的目录执行build命令

用了一个RUN命令执行,是为了节省时间、减少臃肿。


解决问题

ubuntu中mysql启动报错
No directory, logging in with HOME=/
连接报错
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

#第一步
usermod -d /var/lib/mysql/ mysql
#第二步
ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
#第三步
chown -R mysql:mysql /var/lib/mysql
#重启mysql即可
service mysql stop
service mysql start

参考资料:
https://yeasy.gitbooks.io/docker_practice/image/build.html
https://blog.csdn.net/wy_97/article/details/78982694

相关文章

网友评论

    本文标题:用Docker创建一个常用的ubuntu容器(配置Dockerf

    本文链接:https://www.haomeiwen.com/subject/niqsbftx.html