您的位置:首页 > 运维架构 > Docker

linux 安装Docker

2020-03-06 13:54 866 查看

docker 内核版本必须大于3.10

安装 docker

yum install docker

systemctl start docker.service

systemctl enable docker.service

 

镜像 根据需求拉镜像

docker pull microsoft/dotnet dotnet 镜像

docker pull centos centos 镜像

docker pull nginx nginx 镜像

加速器到官网上注册一个:https://account.daocloud.io/signin

生成的加速代码复制下来,到linux docker 跑一下就可以了

yum install unzip 安装好压 Jenkins压缩文件部署到linux要解压所以要安装

 

常用docker命令

1.      进入一个已经运行的容器

docker exec -ti ID /bin/bash

2.      查看容器日志

docker logs -f <容器名orID>

 

3.      查看正在运行的容器

docker ps docker ps -a为查看所有的容器,包括已经停止的。

 

4.      删除所有容器

docker rm $(docker ps -a -q)

删除单个容器

docker rm <容器名orID>

 

5.      停止、启动、杀死一个容器

docker stop <容器名orID> docker start <容器名orID> docker kill <容器名orID>

 

6.      查看所有镜像

docker images

 

7.      删除所有镜像

docker rmi $(docker images | grep none | awk '{print $3}' | sort -r)

 

8.      运行一个新容器,同时为它命名、端口映射、文件夹映射。以redmine镜像为例

docker run --name redmine -p 9003:80 -p 9023:22 -d -v /var/redmine/files:/redmine/files -v /var/redmine/mysql:/var/lib/mysql sameersbn/redmine

 

9.      一个容器连接到另一个容器

docker run -i -t --name sonar -d -link mmysql:db   tpires/sonar-server sonar

容器连接到mmysql容器,并将mmysql容器重命名为db。这样,sonar容器就可以使用db的相关的环境变量了。

 

10.   拉取镜像

docker pull <镜像名:tag>

docker pull sameersbn/redmine:latest

 

11.   当需要把一台机器上的镜像迁移到另一台机器的时候,需要保存镜像与加载镜像。

机器a

docker save busybox-1 > /home/save.tar

使用scp将save.tar拷到机器b上,然后:

docker load < /home/save.tar

 

12.   构建自己的镜像

docker build -t <镜像名> <Dockerfile路径>

如Dockerfile在当前路径:

docker build -t xx/gitlab .

 

13.   重新查看container的stdout

# 启动top命令,后台运行$ ID=$(sudo docker run -d ubuntu /usr/bin/top -b)# 获取正在running的container的输出 $ sudo docker attach $ID top - 02:05:52 up  3:05,  0 users,  load average: 0.01, 0.02, 0.05 Tasks:   1 total,   1 running,   0 sleeping,   0 stopped,   0 zombie Cpu(s):  0.1%us,  0.2%sy,  0.0%ni, 99.7%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st Mem:    373572k total,   355560k used,    18012k free,    27872k buffers Swap:   786428k total,        0k used,   786428k free,   221740k cached ^C$ $ sudo docker stop $ID

 

14.   后台运行(-d)、并暴露端口(-p)

docker run -d -p 127.0.0.1:33301:22 centos6-ssh

 

15.   从Container中拷贝文件出来

sudo docker cp 7bb0e258aefe:/etc/debian_version .

拷贝7bb0e258aefe中的/etc/debian_version到当前目录下。

注意:只要7bb0e258aefe没有被删除,文件命名空间就还在,可以放心的把exit状态的container的文件拷贝出来

 16. 给容器打标记

docker tag 容器ID xx.xx.xx.xx:5000/name

使用docker images 查看打标记镜像

17.上传镜像

docker push xx.xx.xx.xx:5000/name

进入容器

docker exec -it o2oWeb /bin/bash

重启后docker镜像找不到,修改下面文件再重启就好了

http://*******.m.daocloud.io 语句,然后 在这个文件中的/etc/docker/daemon.json 格式就变了{"registry-mirrors": ["http://****.m.daocloud.io"],} 最后一个多了一个逗号,我猜测是这个shell语句的原因,我把逗号去掉以后,程序可以正常启动。

转载于:https://my.oschina.net/u/3872144/blog/1821017

  • 点赞
  • 收藏
  • 分享
  • 文章举报
chongdao7141 发布了0 篇原创文章 · 获赞 0 · 访问量 72 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: