安装docker
1.yum -y install docker
2.service docker start 启动 stop 停止
3.systemctl enable docker 开机启动 disable 取消
镜像是用来生成容器,容器是由镜像产生,镜像可以移植到任何docker环境下再生成容器,
一个镜像能生成多个容器只要命名时名字不同
使用原则:容器最好不要存数据,镜像最好别去修改原来结构
------------------------------内容分割线----------------------------------
常用命令
docker search :查找镜像
docker pull :获取镜像
docker images :查看镜像
docker ps (-a所有的) :查看运行中的docker 容器
docker start CONTAINER_ID :启动
docker stop CONTAINER_ID :停掉运行中的容器 用kill 也可
docker stop $(docker ps -q) :停止所有
docker rmi IMAGE_ID (-f) :删除镜像 -f 强制
docker rm CONTAINER_ID(-f) :删除容器 -f 强制
docker inspect centos :显示容器或镜像相关信息
docker run -it centos :运行centos镜像,并进入
docker run -d --name 命名 -it centos /bin/bash
运行(-d后台)命名后的容器,并进入容器(-it进入)并运行/bin/bash命令
下载镜像:docker pull redis:3 //下载redis 3版本
查看日志:docker logs -f 容器名或id
创建启动:创建容器redis指定对外16379对内6379端口映射(-p),命名redis ,镜像名:TAG
docker create -p 16379:6379 --name redis redis:3 //可创建多个,6379为当前创建容器内部端口
docker start 6e0f…… 启动指定容器的id,只要输入前几位即可
docker run -d -p 16379:6379 --name redis redis:3 是前面两个命令结合体
进入容器:docker exec -it redis /bin/bash //并运行命令 /bin/bash 再执行redis命令: redis-cli
退出容器:exit OR ctrl+ d
PS:
docker create -p 16379:6379 -v /data:/data --name redis redis:3 redis-server /data/redis/redis.conf
将/data挂上,添加配置文件,启动命令 redis-server 指定配置文件
------------------------------内容分割线----------------------------------
安装mysql 衍生版percona:5.6
docker pull percona:5.6
创建容器:-v 挂载目录 外主机:容器内 -p 端口对应 -e参数 环境变量
docker create --name percona -v /data/mysql-data:/var/lib/mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root percona:5.6
------------------------------内容分割线----------------------------------
docker 容器(container)开机启动
1、编辑文本docker-container\@.service缺少了什么,他的名字就叫这个。
#cd /etc/systemd/system/
#vi /etc/systemd/system/docker-container\@.service
将一下内容复制进去:
[Unit]
Description=Docker Container %I
Requires=docker.service
After=docker.service
[Service]
Restart=always
ExecStart=/usr/bin/docker start -a %i
ExecStop=/usr/bin/docker stop -t 2 %i
[Install]
WantedBy=default.target
2、设置开机启动(注意:开机先启动docker才能再启动容器)
# systemctl enable docker
# systemctl enable docker-container\@redis.service (disable)
3、检查是否能正常启动
# systemctl start docker-container\@redis.service
# systemctl status docker-container\@redis.service
第2、3步 调用的docker-container\@redis.service服务,实际上是docker-container\@.service 服务。redis替换了第三步内容的 %i 最后重启试试。
------------------------------内容分割线----------------------------------