Docker是一个虚拟环境容器,可以将你的开发环境、代码、配置文件等一并打包到这个容器中,并发布和应用到任意平台中。比如,你在本地用Python开发网站后台,开发测试完成后,就可以将Python3及其依赖包、Flask及其各种插件、Mysql、Nginx等打包到一个容器中,然后部署到任意你想部署到的环境。
Docker用法:从仓库(一般为DockerHub)下载(pull)一个镜像,Docker执行run方法得到一个容器,用户在容器里执行各种操作。Docker执行commit方法将一个容器转化为镜像。Docker利用login、push等命令将本地镜像推送(push)到仓库。其他机器或服务器上就可以使用该镜像去生成容器,进而运行相应的应用程序了。
下载安装脚本
#!/bin/bash
# remove old version
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine
# remove all docker data
sudo rm -rf /var/lib/docker
# preinstall utils
sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
# add repository
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
# make cache
sudo yum makecache fast
# install the latest stable version of docker
sudo yum install -y docker-ce
# start deamon and enable auto start when power on
sudo systemctl start docker
sudo systemctl enable docker
# add current user
sudo groupadd docker
sudo gpasswd -a ${USER} docker
sudo systemctl restart docker
安装mysql
#下载镜像
docker pull mysql:5.7
#设置目录
cd ~
mkdir mysql && cd mysql
mkdir data logs conf
#启动镜像
docker run -p 3306:3306 --name docker_mysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=12345 -d mysql:5.7
#查看进程
docker ps
#进入容器
docker exec -it docker_mysql bash
#登录mysql
mysql -uroot -p12345
mysql> grant all privileges on *.* to 'root'@'%' identified by '12345';
mysql> flush privileges;
卸载docker中mysql
docker stop docker_mysql
docker rm docker_mysql
docker rmi `docker images | grep mysql|awk '{print $3}'`
网友评论