一、ubuntu14.04 server 安装docker
#脚本全自动安装,支持linx|mac
1、sudo apt-get -y install openssh-server #ubuntu14.04 server
2、$ curl -fsSL https://get.docker.com -o get-docker.sh
$ sudo sh get-docker.sh #docker 官方脚本
3、$ sudo docker run hello-world #测试
二、常用命令
1、docker info #docker详情
2、ps -e |grep docker #docker 守护进程是否启动
3、sudo status docker #docker 守护进程是否运行,仅ubuntu命令
3.1、sudo stop docker
3.2、sudo start docker
4、docker run --name test_container -i -t ubuntu /bin/bash #运行一个容器(--name xxx 为此容器命名)并进入bash,如果没有该镜像则会拉取
5、docker start test_container #启动一个容器,只有运行状态的容器才可exec进入
5.1、docker stop test_container #停止一个容器
6、sudo docker run --name daemon_ubuntu -d ubuntu /bin/sh -c "while true; do echo hello world; sleep 1;done" #加 -d 参数,容器后台运行 -c 参数是commamd,Docker容器在后台运行,必须要有一个前台进程
6.1、sudo docker logs daemon_ubuntu
7、docker rm $ID #删除指定id容器
7.1、docker rm `docker ps -a -q` #删除所有容器
7.2、docker rmi `docker images -q` #删除所有镜像
8、docker exec -it $ID /bin/bash #进入容器
9、docker inspect -f '{{.Id}}' $container_name #获取完整id
10、docker cp $host_file_path $container_id_full:/ #宿主机文件拷贝指定容器路径
11、docker exec -it $contain_id /bin/bash #[ctrl+D]退出后不会终止容器运行
三、常用容器
- mysql
sudo docker run --name mysql_test -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mysql #3306端口映射宿主机3306并且后台运行
##注意一个大坑,否则客户端连不上,5.6以后版本密码加密方式变了,所以要进入mysql重新设置
mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
mysql> flush privileges;
- nginx Container
docker run -d --name nginx_test -P nginx:latest #nginx 80 端口映射宿主机随机端口
docker ps -a #查看随机端口是多少
docker run -ti --cpus 1 -m 1G openjdk:8u212-jdk
docker run --name my_centos -i -t centos:7.2.1511 /bin/bash
yum install java-1.7.0-openjdk
yum install net-tools.x86_64 # 可以ifconfig
四、构建自定义镜像
https://www.cnblogs.com/zhouyalei/p/6390963.html
“年轻时,我没受过多少系统教育,但什么书都读。读得最多的是诗,包括烂诗,我坚信烂诗早晚会让我邂逅好诗。”
by. 马尔克斯