Recent advances in the manufacturing sectorincluding edge-to-cloud continuum, machine learning, and digitalization -can enable smart manufacturing solutions, such as control optimization and predictive maintenance. One challenge in new system architectures is the efficient resource management under changing conditions while meeting process requirements, such as latency, when deploying software services. To address this, we propose an approach for self-adaptive service deployment that increases the resilience of smart manufacturing systems. We combine self-adaptation principles with run-time models -that describe the system in the form of the standardized Asset Administration Shell -to enable flexible software architectures for manufacturing. The proposed solution comprises the continuous adaptation of the service deployment in response to system changes, such as resource exhaustion or failure, to ensure an optimized operation. An evaluation of an example manufacturing use case shows that the proposed solution leads to lower execution latency and continuation of production in situations with low resources, e.g., through failures, compared to less flexible deployment approaches.