
# 编写开机运行脚本
应用容器化时，一般需要准备开机运行的脚本，写作脚本的方式和写一般shell脚本相同。该脚本的主要目的包括：
- 启动应用所依赖的软件。
- 将需要修改的配置设置为环境变量。
![](https://support.huaweicloud.com/bestpractice-cce/public_sys-resources/note_3.0-zh-cn.png)
开机运行脚本与应用实际需求直接相关，每个应用所写的开机脚本会有所区别。请根据实际业务需求来写该脚本。
#### 操作步骤
1. 以root用户登录docker所在的机器。
2. 执行如下命令，切换到用于存放该应用的目录。 
   **cd apptest**
   
   
3. 编写脚本文件，脚本文件名称和内容会根据应用的不同而存在差别。此处仅为本例应用的指导，请根据实际应用来编写。
   
   **vi** **start_tomcat_and_mongo.sh**
   ```
   #!/bin/bash
   # 加载系统环境变量
   source  /etc/profile
   # 启动mongodb，此处已写明数据存储路径为/usr/local/mongodb/data
   ./usr/local/mongodb/bin/mongod --dbpath=/usr/local/mongodb/data --logpath=/usr/local/mongodb/logs --port=27017 -fork
   # 以下3条脚本，表示docker启动时将环境变量中MYSQL相关的内容写入配置文件中。
   sed -i "s|mysql://.*/awcp_crmtile|mysql://$MYSQL_URL/$MYSQL_DB|g" /root/apache-tomcat-7.0.82/webapps/awcp/WEB-INF/classes/conf/jdbc.properties
   sed -i "s|username=.*|username=$MYSQL_USER|g" /root/apache-tomcat-7.0.82/webapps/awcp/WEB-INF/classes/conf/jdbc.properties
   sed -i "s|password=.*|password=$MYSQL_PASSWORD|g" /root/apache-tomcat-7.0.82/webapps/awcp/WEB-INF/classes/conf/jdbc.properties
   # 启动tomcat
   bash /root/apache-tomcat-7.0.82/bin/catalina.sh run
   ```
   
   
 
