注意,若在虚机中安装docker,可首先关闭防火墙,避免出现未知问题
安装
若已安装docker版本过低,可通过以下命令,列出包含docker字段的软件的信息
# rpm -qa | grep docker
使用yum remove卸载软件
# yum remove docker-1.13.1-53.git774336d.el7.centos.x86_64
# yum remove docker-client-1.13.1-53.git774336d.el7.centos.x86_64
# yum remove docker-common-1.13.1-53.git774336d.el7.centos.x86_64
使用curl升级到最新版
# curl -fsSL https://get.docker.com/ | sh
启动Docker
systemctl start docker
查看docker版本
docker version
docker镜像加速
vim /etc/docker/daemon.json
添加如下内容
{
"insecure-registries":["192.168.157.65:8888"],
"registry-mirrors": ["https://v4z55rzu.mirror.aliyuncs.com"]
}
docker pull openjdk
docker run openjdk:latest java -version
docker rmi {imageName} 删除镜像
docker rm {containName} 删除容器
docker-compose up -d
docker exec -it ${container} redis-cli -h 127.0.0.1 -p 6379 查看容器是否启动正常
docker ps -a 查看历史启动容器
docker rm -f {容器ID} 强制删除容器
查看指定时间后的日志,只显示最后100行:
$ docker logs -f -t --since="2018-02-08" --tail=100 CONTAINER_ID
查看最近30分钟的日志:
$ docker logs --since 30m CONTAINER_ID
查看某时间之后的日志:
$ docker logs -t --since="2018-02-08T13:23:37" CONTAINER_ID
查看某时间段日志:
$ docker logs -t --since="2018-02-08T13:23:37" --until "2018-02-09T12:23:37" CONTAINER_ID
教程地址:https://my.oschina.net/wuweixiang/blog/2874064
Docker开启远程访问
[root@izwz9eftauv7x69f5jvi96z docker]# vim /usr/lib/systemd/system/docker.service
#修改ExecStart这行
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
#重新加载配置文件
[root@izwz9eftauv7x69f5jvi96z docker]# systemctl daemon-reload
#重启服务
[root@izwz9eftauv7x69f5jvi96z docker]# systemctl restart docker.service
#查看端口是否开启
[root@izwz9eftauv7x69f5jvi96z docker]# netstat -nlpt
#直接curl看是否生效
[root@izwz9eftauv7x69f5jvi96z docker]# curl http://127.0.0.1:2375/info
docker exec -it {容器ID} sh
mysql -u root -p
use mysql;
alter user 'root'@'localhost' identified with mysql_native_password by '123456';
alter user 'root'@'%' identified with mysql_native_password by '123456';
flush privileges;
用于解决乱码
SET NAMES 'utf8';
docker ps
docker exec -it 容器id /bin/bash
apt-get update
apt-get install vim
version: "2"
services:
eurekaserver1: # 默认情况下,其他服务可以使用服务名称连接到该服务。因此,对于peer2的节点,它需要连接http://peer1:8761/eureka/,因此需要配置该服务的名称是peer1。
image: eureka:1.0
ports:
- "7900:8900"
environment:
- spring.profiles.active=test_ha_1
eurekaserver2:
image: eureka:1.0
ports:
- "7800:8900"
environment:
- spring.profiles.active=test_ha_2
redis:
image: redis
ports:
- "6379:6379"
mysql:
container_name: mysql
image: mysql
volumes:
- ./mysql:/var/lib/mysql
ports:
- "3306:3306"
environment:
- MYSQL_ROOT_PASSWORD=412826
restart: always
运行命令: docker-compose up -d