文档章节

Docker常用命令

郁极风
 郁极风
发布于 2016/09/06 16:13
字数 912
阅读 57
收藏 3

环境:VMware+CentOS 7.1(安装和联网什么的就不说啦,这里设置的IPv4地址为:192.168.1.50)

1. 安装和启动

安装Docker:yum install docker

启动Docker服务:

    service docker start(旧式启动)、chkconfig docker on(旧式开机自启)

    systemctl start docker.service(新式启动)、systemctl enable docker.service(新式开机自启)

PS:如果出现:Another app is currently holding the yum lock,则使用命令:rm -f /var/run/yum.pid

2. Docker镜像基本命令

检索镜像:docker search 镜像名称 (如:docker search mysql)

镜像下载:docker pull 镜像名称(如:docker pull docker.io/mysql )

查看镜像列表:docker images

删除镜像:docker rmi image-id

停止所有的container(见下),才能够删除其中的images:docker stop $(docker ps -a -q)

删除images: docker rmi image id

想要删除untagged images,也就是那些id为<None>的image的话可以用:docker rmi $(docker images | grep "^<none>" | awk "{print $3}")

要删除全部image的话:docker rmi $(docker images -q)

3. Docker容器基本命令

运行命令:docker run --name 取名 -d image-name(这里--name后面接的为运行时容器名称 -d 代表datached意味着运行完后控制台不会被阻碍,仍然可以运行其他命令)

查看运行中的容器列表:docker ps

查看运行和停止的容器:docker ps -a

启动容器:docker start container-name/container-id(如:docker start 取名)

停止容器:docker stop container-name/container-id(如:docker stop 取名)

删除容器:docker rm container-id

删除所有容器:docker rm $(docker ps -a -q)

启动容器带端口映射:

        Docker容器中运行软件的端口在本地和局域网不可访问,此处操作是映射端口到当前主机端口上

             Redis:docker run [--name 取名]  -p 6379:6379 取名 -d image-name(如:docker run --name redis2 -p 6379:6379 -d docker.io/redis,此处的--name也可以去掉,则会默认取名)

            MySQL:启动MySQL和上面类似,但是要带上一个-e参数,具体见https://hub.docker.com/r/mysql/mysql-server/(如:docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=密码 -d docker.io/mysql)

有了如上操作,我们就能开心的在本地连接Docker中的容器了,欧耶欧耶蹦擦擦~

4. 容器日志:

查看当前容器日志:docker logs container-name/container-id

5. 登录容器:

 登录命令:docker exec -it container-name/container-id bash

 Redis操作如下:

[root@localhost ~]# docker run --name redis -p 6379:6379 -d docker.io/redis
428b031e0cfc252341906964a7103e1b50005a5abc80cc0b68c2635d1e164175
[root@localhost ~]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
428b031e0cfc        docker.io/redis     "docker-entrypoint.sh"   3 seconds ago       Up 1 seconds        0.0.0.0:6379->6379/tcp   redis
[root@localhost ~]# docker exec -it redis bash
root@428b031e0cfc:/data# re 
read             readonly         reboot           redis-check-rdb  redis-server     renice           resizepart
readarray        readprofile      redis-benchmark  redis-cli        remove-shell     reset            return
readlink         realpath         redis-check-aof  redis-sentinel   rename.ul        resize2fs        rev
root@428b031e0cfc:/data# redis-cli -h 192.168.1.50  
Could not connect to Redis at 192.168.1.50:6379: No route to host
Could not connect to Redis at 192.168.1.50:6379: No route to host
not connected> 
not connected> 
root@428b031e0cfc:/data# redis-cli                 
127.0.0.1:6379> set zhu aaa
OK
127.0.0.1:6379> get zhu
"aaa"
127.0.0.1:6379> 

因为是本地的Redis,使用redis-cli即可,如果是远程则:redis-cli -h 主机名 -p 密码

MySQL操作如下:

[root@localhost ~]# docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=111111 -d docker.io/mysql
d3fde45b6338954866bb2d6722da947d3475067b665c120b195e344dbadb5460
[root@localhost ~]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
d3fde45b6338        docker.io/mysql     "docker-entrypoint.sh"   3 seconds ago       Up 2 seconds        0.0.0.0:3306->3306/tcp   mysql
428b031e0cfc        docker.io/redis     "docker-entrypoint.sh"   5 minutes ago       Up 5 minutes        0.0.0.0:6379->6379/tcp   redis
[root@localhost ~]# docker exec -it mysql bash
root@d3fde45b6338:/# mysql -uroot -p111111
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.14 MySQL Community Server (GPL)

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.03 sec)

mysql> 

纯手打,欢迎拍砖~

 转载请指明出处:http://my.oschina.net/u/1991646/blog/743151

            

 

© 著作权归作者所有

郁极风
粉丝 8
博文 30
码字总数 8787
作品 0
长沙
程序员
私信 提问

暂无文章

Bash 和 Python 编程语言优缺点分析

Bash 和 Python 是大多数自动化工程师最喜欢的编程语言。它们都各有优缺点,有时很难选择应该使用哪一个。所以,最诚实的答案是:这取决于任务、范围、背景和任务的复杂性。 让我们来比较一下...

xiangyunyan
18分钟前
3
0
Kubernetes从懵圈到熟练:读懂这一篇,集群节点不下线

排查完全陌生的问题,完全不熟悉的系统组件,是售后工程师的一大工作乐趣,当然也是挑战。今天借这篇文章,跟大家分析一例这样的问题。排查过程中,需要理解一些自己完全陌生的组件,比如sys...

阿里云云栖社区
23分钟前
4
0
解决exe4打包出现的问题

https://blog.csdn.net/gem_yaorao/article/details/48626155

南桥北木
40分钟前
1
0
SpringBoot高级篇JdbcTemplate之数据更新与删除

前面介绍了JdbcTemplate的插入数据和查询数据,占用CURD中的两项,本文则将主要介绍数据更新和删除。从基本使用上来看,姿势和前面的没啥两样 <!-- more --> I. 环境准备 环境依然借助前面一...

小灰灰Blog
56分钟前
3
0
Filecoin 编译问题

https://github.com/filecoin-project/go-filecoin/issues/2503 Error go run ./build build command from root I've faced on this error Building go-filecoin...git log -n 1 --forma......

怎当她临去时秋波那一转
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部