Nowadays, we see a steady growth in the use of service-oriented cloud applications in modern business. However, there are some issues related to the placement of service-oriented cloud applications in the software-defined infrastructure of the virtual data center. The goal of optimization is to control the service-oriented cloud applications within data centers. The advantage of modern infrastructure virtualization is the possibility to use software-defined networks and software-defined data storages. However, the existing optimization of algorithmic solutions does not take into account the specifics of working with multiple class service-oriented cloud applications types. The paper describes the models which describe the basic structures of service-oriented cloud applications including: a level distribution model of the software-defined infrastructure with the technology of cloud applications containerization, a generalized model of a service-oriented cloud application, a model of virtualization of service-oriented cloud applications based on containers. Besides, we developed the efficient algorithm for optimizing the technology of containerization of cloud applications and services in the virtual data center (VDC) infrastructure. We propose an efficient algorithm for placing applications in the infrastructure of a VDC The optimization of the placement of serviceoriented cloud applications based on the VM template and containers with VDC disabilities infrastructure is reduced to packing in containers. Besides, we generalize the well-known heuristic and deterministic Karmakar-Karp's algorithms. During the experimental studies, we have found that the use of our algorithm enables to decrease the response time of cloud applications and services and, therefore, to increase the productivity of user requests processing and to reduce the number of refusals.