容器启动前需要注意的事情:
以下内容需要首先去hub.docker.com官网去查看指定镜像在启动容器时的用法:
1.是否需要加入端口映射,如果需要添加-p参数,-p 浏览器访问端口(外部端口):容器内部端口
2.是否需要加入自定义网络,一般应该是容器集群的情况会使用,如果需要添加--network参数,且在容器启动前先创建一个自定义网络
3.容器应用是否有文件目录需要挂载到主机外边用于修改和持久化,如果需要添加-v参数,主机目录:容器内部目录,且要考虑容器启动是否需要默认配置文件,如果需要则要使用卷映射,而不能能使用目录挂载,否则会因为容器启动时映射的主机目录为空目录而导致容器启动失败,如nginx容器启动
4.容器启动的时候是否需要加一些环境变量来做初始配置,如上篇博客提到的redis主从集群就需要在容器启动时添加一些初始环境变量,具体的环境变量如何配置使用要去docker hub官网去看
5.指定容器名称 --name,如果不指定容器名称docker会随机给一个名字,一般建议指定
6.指定使用的镜像名称+tag版本,容器可用的镜像版本去hub.docker.com官网指定镜像的tags标签页去查看可使用的镜像,再使用每个tag版本右侧git pull的镜像名称+版本即为可使用镜像+版本
7.执行容器启动命令docker run -d
8.docker ps命令查看容器是否启动成功,找到指定容器名称,查看容器的status状态是否为up,一般为up即为启动成功。如果没有启动成功即用docker ps没有查到运行中的容器 用docker ps -a查看所有容器,然后找到指定容器名称查看容器状态,再用docker logs 容器ID(容器ID前三位即可)查看容器启动报错日志,查看error日志,一般warning日志不影响,查找到错误之后再docker restart 容器id重启容器看是否重启成功
例子:启动一个mysql容器
1.去hub.docker.com搜索mysql镜像,并且查看相关命令参数使用用法








2.mysql容器启动并在外部主机连接mysql容器:
外部主机连接mysql容器的注意事项:
1.连接的IP地址为安装docker的服务器地址,确保该容器的对外暴露的端口已经去掉防火墙啥的,否则外部电脑连接不上,如在某一个linux服务器安装了docker,并在docker中启动了mysql容器应用,且这个mysql容器应用在linux服务器暴露的端口是3306,确保这个linux服务器3306端口已经开放防火墙规则,否则在windows电脑上连接这个linux服务器的3306的mysql服务是连接不成功的。如果IP地址为一些云服务器,确定使用公网IP地址,否则也连接不上。(个人理解。。。。)




